天问

2016年开源方面的热门趋势


作者: Rachel Roumeliotis,O’Reilly Media的战略性内容总监 
译者: 孙薇 
责编: 钱曙光

题记:本文将对人工智能项目与容器方面最为热门和最新的语言进行简单的介绍,并讨论开源编程方面的热门趋势。

技术总是不断发展的,就算中间或有曲折,整体方向还是向前的。但要论具体的驶向,就算是对于整体趋势和影响特别关注的人来说,这项任务也很有挑战性,下面我们将尝试总结2016年开源方面的热门趋势。

语言推动人工智能发展

经历过20世纪90年代的“人工智能寒冬”之后,如今伴随着计算能力的提升,人工智能又获新生,并且正在影响着我们构建软件的方式。机器学习、深度学习、自然语言处理与自动语音识别功能随处可见,就算OSCON开源大会这样的盛事上也充斥着关于人工智能的讨论。尽管计算能力的提升已经做了铺垫,但将人工智能开源才是将这个行业推向创新和竞争的关键一步。竞争者除了TensorFlow、OpenAI和Apache Spark这些众多周知的强大框架之外,还有类似Neon和Theano这样规模小一些的。

人工智能的发展对软件开发者有什么影响呢?Python因其敏捷性深受数据工程师和科学家们的欢迎,被定位成人工智能的编程语言,类似的语言还有R语言、Java和Scala。

容器和Go语言密不可分

Go语言1.0版本是在2012年3月发布的,之后第二年Docker便出现了,再之后是Kubernetes。简单来讲,Go并非专为其而生,但却刚好吻合其用途,因此容器也就成了它的主要用途之一。Go语言所编写的方式是Java或C++从未达到过的,适用于高度网络化、有着一流的并发性的世界。我们至少要对Go语言做以了解——这种语言正在蓬勃发展,在未来若干年中会作为许多应用的根基出现。

Swift超越了苹果的生态系统

2015年就在这门语言出现后不久,苹果开源了Swift,它在iOS和Mac OS X开发者之中风靡一时,这种语言不但很容易让开发者快速喜欢上,而且比Objective-C和C++更加安全。在这个满是JavaScript框架和其它新语言的世界中,Swift能有多成功仍有待观察,不过若能继续保持现在的势头,Swift定有机会借着苹果的东风,在这个宏大的网络世界中分一杯羹。

Java 8 vs JVM语言

随着Java 8的发布,Lambdas表达式作为一项重要的特性随之而来,类似Scala和Clojure之类的JVM语言也渐入人眼。近来,随着Apache Spark的良好发展,Scala也获得了井喷式的增长。不过至少目前,由于开发者对Java 8新特性的认真审视,Scala和Clojure似乎略有停滞。Java目前已经可以解决并发和大数据问题了,这些都是其它编程语言多年来一直在尝试解决的需求。在2017年的OSCON大会上,Scala和Clojure可能会缺席,这一点并非我们刻意为之,而是因为目前提案的演讲者都对其兴味索然。

前景大有希望的语言

一如既往,总有些后起之秀正蓄势待发,它们或能满足新生需求,或只是源于疯狂的想法,最终却改变了我们对编程的思考方式。2016年之后有五种语言即将大兴,它们分别是:Rust、Elixir、Elm、Kotlin和Perl 6。

它们为这个行业带来了什么?

  • Rust:以更高一些的安全性进行快速的系统编程。

  • Elixir:针对较大规模的应用,支持分布式、高容错、功能性和动态的开发。

  • Elm:很特别的函数式编程语言,最终会编译成JavaScript,非常有趣,而且会愈来愈让人上瘾。

  • Kotlin:针对Java和JVM系列,特性包括静态类型、安全性、Java兼容。

  • Perl 6:重获新生!Perl 6成为了一门新语言,在表达式和功能方面都很丰富,这些奠定了它的未来胜利基础。

大浪淘沙,时间会告诉我们真相,让我们静待它们的表现,也希望对开源有兴趣的开发者们多多尝试,在作出贡献的同时成为历史的参与者。

博客地址:http://blog.yoqi.me/?p=2208
扫我捐助哦
喜欢 0

这篇文章还没有评论

发表评论