累积开发者团队近十年的努力,Julia1.0版本于2018年8月8号正式发布,又一次引起业界轰动。不少人开玩笑说“刚转行Python,你又要我学Julia” 、“又想骗我学Julia”、“Python刚入门,你又想让我出门”……那么,Julia到底是何方神圣,我们往下看……
1、Julia是什么
Julia是什么,他能做什么,适合那些人学习?让我们来看看官方是怎么解释的。
“Julia 是一个新的高性能动态高级编程语言。语法和其他编程语言类似,易于其他语言用户学习。Julia 拥有丰富的函数库,提供了数字精度、精致的增幅器(sophisticatedamplifier)和分布式并行运行方式。核心函数库等大多数库是由 Julia 编写,但也用成熟的 C 和FORTRAN 库来处理线性代数、随机数产生和字符串处理等问题。”
“Julia 是个灵活的动态语言,适合科学和数值计算,性能可与传统静态类型语言媲美。”
“Julia主要适用于希望了解并深入的学习Julia语言用以编写高性能程序的国内读者”
看完上面的话,或许激不起你半点兴趣,还是不知道到底该不该选择学Julia。
下面我们再和我们身边最为熟悉的编程软件对比下。
2、Julia 、Python、R、和C
Julia开发团队的要求:“我们想要一种十分自由的开源语言,同时兼具 C 语言的速度和 Ruby 语言的灵活度。我们想要一种同像性语言,具有像 Lisp 一样真正的宏,也有像 Maltlab 一样浅显易懂的数学符号。它是像 Python 一样有用的通用编程语言,像 R 语言一样便于统计的语言,像 Perl 一样自然的字符串处理语言,像 Matlab 一样强大的线性代数语言,也是像 shell 一样的胶水语言。它简单易学,却能让严苛的黑客们为之倾心。我们希望它兼具交互性和可编译性。”
Julia团队一位创始人也表示:“如果你是数学家、科学家或者工程师,那么你过去选择一门编程语言会从它的速度角度进行考虑,例如C++或Java,亦或从语言的易学角度进行考虑,例如Matlab、R或者是Python。而我们创造了一种两者兼备的语言,即Julia。”
我们再看看官方给出的Julia与传统语言最大的区别:
•核心语言很小;标准库是用 Julia 本身写的,如整数运算在内的基础运算
•完善的类型,方便构造对象和做类型声明
•基于参数类型进行函数重载
•参数类型不同,自动生成高效、专用的代码
•高性能,接近静态编译语言,如 C 语言
相比于传统的编程语言,Julia显然很年轻,但是却成为业界的又一新星。八月,在TIOBE排行榜中,Java、C和C++三种老牌编程语言占据前三甲的位置, Julia排名位列50位。自2009年Julia被创建以来,不到十年时间,下载量突破200万次,可见Julia已经逐渐被广为接受,深受用户的喜爱。
下面引用一篇CSDN一段话
“最近, 在了解 Lua 的过程中, 竟然发现了一种专门为"并行"数值计算设计的语言,Julia在了解和试用之后, 发现这才是适合我的最好的语言.
① 可调用 C/Python 库, 聪明的做法, 可以更好的继承现有的成果
②类似 matlab 和 python 的语法, 更换语言的学习成本低, 而且实现起来天生就像python那样高效
③ 接近于 C++ 的性能, 在很多情况下已经足够了
④ 开源的做法, 使得语言具有强大的 Package后备力量, 在生态上已经初具规模
⑥ 天生的并发和分布式支持, 省很多事情了”
3、Julia的学习资源
Julia官网: https://julialang.org/
Julia 1.0 https://julialang.org/blog/2018/08/one-point-zero-zh_cn
小结:了解这么多,是不是有想体验下Julia的冲动呢?下篇小编将手把手带你安装体验。
领取专属 10元无门槛券
私享最新 技术干货