TranslateProject/translated/tech/20161230 Hot programming trends in 2016.md

83 lines
7.1 KiB
Markdown
Raw Normal View History

2017-01-12 17:06:45 +08:00
2016 年的编程趋势
============================================================
### 回顾年度最热门的 AI 项目语言、新语言和更多编程趋势。
![Top programming trends in 2016](https://opensource.com/sites/default/files/styles/image-full-size/public/u23316/climb-top-bridge-yearbook_red.png?itok=YITYmpoR "Top programming trends in 2016")
图片提供: 
[Museum of Photographic Arts][6]. 由 Opensource.com 修改。 CC BY-SA 4.0
技术在不断前进 - 可能不总是向前但总是在变动。即使对于那些关注趋势及其对程序员的影响的人来说确切地了解技术的方向也是一个挑战。当我与我的同事Kelsey Hightower 和 Scott Hanselman和我们的非常棒的编程委员会以塑造来年的[OSCON] [7]O'Reilly 开放源码公约 ),我清楚地看到开源编程趋势总是出现在秋天。我们获得的建议和关注特定主题的数字被证明是开源世界热门趋势的良好指标。以下是我们在 2016 年看到的顶级编程趋势的概述。
### 语言驱动 AI
在 20 世纪 90 年代的人工智能冬季,人工智能随着计算能力的提升再次出现,它一直影响我们如何构建软件。机器学习、深度学习、自然语言处理和汽车语音识别覆盖了世界各地 - 从 GitHub 的项目和工作岗位到新公司成立背后的原因以及清除我们杂乱的台面上的空间Alexa。是的即使像 OSCON 这样的会议都处处提及 AI。虽然计算能力的可用性已经铺平了道路所有关于 AI 的开源已经引起了行业广泛开放的创新和竞争。谷歌的 [TensorFlow][8]、[OpenAI][9] 和 [Apache Spark][10]领导的强大框架,但也有较小的球员,如 [Nervana][11] 的 [Neon][12] 和 [Theano][13]。
AI 的兴起如何影响软件开发者的前景?好了,现在是了解 Python 的好时机 - 它的敏捷性和流行性与数据工程师和科学家使它成为最流行的AI编程语言其次是R、Java和Scala。
### 容器和 Go 的结合就像花生、黄油和果冻
[Go 1.0 发布][14]于 2012 年 3 月。紧接着 [Docker][15] 在一年后发布,[Kubernetes][16] 在另外一年后发布。总之Go 并不是如我们所知的那样专为基础设施的未来而设计的,但 Go 似乎是为了填充编程世界的一个主要的空洞。对于一个高度联网的世界一个必须拥有一流并发性的世界而言Go 是以 Java 或 C++ 永远不会存在的方式专门写的。如果你在做这些事或者类似的事,你应该至少在 Go 世界的尖端,因为它正在发展中,它将会被使用多年,并成为许多程序的骨干。
### Swift 超越了 Apple 的生态系统
Swift 是[ Apple 在 2015 年发布不就之后就开源的][17]。Swift 已经成为 iOS 和 Mac OS X 开发人员的热门话题。这种语言很容易理解因此很快流行起来,并且它比它要取代的语言 - Objective-C 和 C++ 赢得了一个[更安全的声誉][18]。在[ JavaScript 框架][19]和其他新语言的世界中 Swift 的成功如何成功仍有待观察但如果它继续获得苹果忠实用户的欢迎Swift 将有机会成为伟大的网络世界中有望成功的竞争者和超越者。
### Java 8 vs 使用 JVM 的函数式语言
Java 8 的函数式能力(即引入 Lambdas )的出现使得 JVM 语言(如 Scala 和 Clojure上榜单了。最近很大程度上由于 Apache Spark 的增长使得 Scala 有一点小爆发。因为长期的和新的开发人员一起都来关注 Java 8 所带来的东西至少在那一刻Scala 和 Clojure 似乎被搁置。Java 现在能够解决并发和大数据关心的事,这些其他编程语言专门为满足这些要求已经做了多年。在 2017 年OSCON 几乎缺乏 Scala 和 Clojure 的提案,不是因为设计,但似乎潜在发言者没有什么兴趣提交提案。
### 新兴语言
和往常一样世上总是有更多的新兴语言旨在把事情做得更好它们可以做到从前的语言出现时没有的需求或者开始只是疯狂思想最终改变了我们对编程的看法。今年有五种语言即将进入大时代Rust、Elixir、Elm、Kotlin和 Perl 6。
这 5 个会给行业带来什么?
* [Rust][1]:兼顾速度和一定安全的系统编程语言。
* [Elixir][2]:函数式、动态和容错,适用于那些规模越来越大的应用程序。
* [Elm][3]:更多函数式的乐趣,使用 JavaScript学习成为一种乐趣。
* [Kotlin][4]:这一个是为使用 Java 和 JVM 的人设计的语言 - 静态类型、安全我提到Java兼容
* [Perl 6] [5]它还活着Perl 6 碰巧是一种新的语言,它胜在富有表现力和功能丰富。
时间会告诉他们是否会如约发布。尝试他们,为他们贡献,成为未来的一部分!
--------------------------------------------------------------------------------
作者简介:
![](https://opensource.com/sites/default/files/styles/profile_pictures/public/pictures/_mts0602.jpg?itok=7cSl2h8C)
Rachel Roumeliotis - O'Reilly MediaInc.的战略内容总监,领导了一个编辑团队,其涵盖各种各样的编程主题,从全栈 web 开发到企业中的开源到新兴的编程语言。她是 OSCONO'Reilly软件架构会议和 Fluent 的编程主席。 她从事技术出版工作超过10年获得许多领域的内容包括移动编程、UX、计算机安全。
--------------------------------------------------------------------------------
via: https://opensource.com/article/16/12/yearbook-top-programming-trends-2016
作者:[Rachel Roumeliotis][a]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]:https://opensource.com/users/rroumeliotis
[1]:https://www.rust-lang.org/en-US/
[2]:http://elixir-lang.org/
[3]:http://elm-lang.org/
[4]:https://kotlinlang.org/
[5]:https://perl6.org/
[6]:https://www.flickr.com/photos/mopa1/5710937421/in/photolist-9GE3Ji-6tCkcs-otWCnW-wkkhM8-tm7Nah-7vwJ3Q-68HXuT-oruzry-7Dnhxt-oeUiuj-otcNUW-oyfLei-i1n1f6-owqxpT-i8RyRi-owbQS4-ovnJwp-otgwsB-qtFP4G-i1yVzD-i9cB9K-i1Db76-8eHe5n-i8VwCo-oupp7X-ouCYj2-i7VHNV-qrLEpj-ou6mGD-otHdws-55Bcba-ba4NaZ-owr9WM-r5rFgN-i1As83-i9e17E-of1nLV-ocbpqf-occJbg-oeZBT4-oujeML-obZjTD-oePhsw-odkejY-5ohHHH-odjBfU-odkSVS-otTy9e-obWKAc-ouXqVQ
[7]:http://conferences.oreilly.com/oscon/oscon-tx
[8]:https://www.tensorflow.org/
[9]:https://openai.com/blog/
[10]:http://spark.apache.org/
[11]:https://www.nervanasys.com/
[12]:https://github.com/NervanaSystems/neon
[13]:https://github.com/benanne/nervana_theano
[14]:https://blog.golang.org/go-version-1-is-released
[15]:https://opensource.com/resources/what-docker
[16]:https://opensource.com/resources/what-is-kubernetes
[17]:https://opensource.com/life/15/12/most-likely-succeed-2016
[18]:http://www.infoworld.com/article/2920333/mobile-development/swift-vs-objective-c-10-reasons-the-future-favors-swift.html
[19]:https://opensource.com/article/16/11/15-javascript-frameworks-libraries