(author| Martin Angelov) original前端
The software development industry continues its relentless march forward. In 2016 we saw new releases of popular languages, frameworks and tools that give us more power and change the way we work. It is difficult to keep track of everything that is new, so at the end of every year we give you our take on what is important and what you should learn during the next twelve months.git
In 2016 we saw the rise of the Progressive Web App concept. It represents web application that work offline and offer a native, app-like experience. They can be added to your smart device's homescreen and can even send you push notifications, bridging the gap with native mobile apps. We think that in 2017 PWA are going to become even more important and are well worth investigation. See our overview heregithub
2016咱们目击了PWA概念的兴起。它表示了web app能够线下使用,而且提供一个类原生app的用户体验。PWA能够被添加到手机的主屏,而且能够推送消息、桥接本地应用。咱们认为在2017 PWA将会变的更加剧要,而且具有投资价值。web
tucao:关于Progressive web app,google早些时候就在大力推进了。文章详解编程
Everybody is talking about bots right now. From platforms for running them, to frameworks for building them, the community is buzzing with activity(read our intro here). Bots are the new mobile apps, and if you hurry up you can catch the wave while everyone is excited. Once the novelty wears off, bots will probably be relegated to some boring role such as automated customer support. But hey, we can dream!c#
如今每一个人都在讨论bots。从运行它们的平台到开发它们的平台,社区充满了活力。Bots是新的移动应用,若是你加紧的话你还能够趁着全部人还很激动的时候抓住潮流。当新奇感过去了,bots也许会变成无聊的角色,好比自动客户支持。可是,咱们还能够梦想!后端
tucao:看到bot hype,我一脸懵?点进intro,竟然是自动回复机器人....嗯,全能咨询机器人?后台是API,任何语言均可以,Node.js、PHP,如今JAVA和Python也有不少库了。前台能够是任何消息应用(Facebook Messenger、Slack、Telegram),或者是简单的聊天界面。而且能够不用限制在单平台上。浏览器
In the JavaScript community we have an incredible churn of framework and tools, with new ones being born almost every week. Unitil recently, the expectation was that the old tools would just be replaced by the new, but this is not what we saw in 2016. Instead, we saw the popular frameworks exchanging ideas and incorporating the innovations put forth by newcomers. So in 2017 it won't matter much which of the major JS frameworks you choose, their features are mostly comparable.ruby
在JS社区存在着难以置信的框架和工具的变更,几乎每周都有新的东西产生。直到最近,预期都只是旧的工具直接被新的替代,但这并非咱们在2016看见的。相反,能够看到流行框架之间交换思想,而且归入新兴框架的创新。因此在2017重要的不是你选择了那种JS框架,它们的特性大多数都是兼容的。babel
Companies and developers everywhere are embracing “the cloud”. This is virtualized computer infrastructure that is available on demand and fully configurable from a control panel. The big three cloud providers are AWS, Google Cloud and Azure. Thanks to their ongoing competition prices have been falling, bringing it within the budgets of smaller companies and individual developers. Familiarizing yourself with the cloud workflow would be a good investment for 2017.
全部的企业和开发者都在敞开怀抱拥抱「云」。 三大云提供商巨头,AWS、Google、Azure。感谢他们的持续竞争带来价格的下跌,让小公司和我的开发者也能享受到云服务(噗。让本身习惯cloud workflow是在2017很好的投资。
Machine Learning(ML) has exploded in popularity during the last twelve months. And with the historic AlphaGo vs Lee Sedol match in March, it entered the mainstream. Smart computer systems that learn from raw data are revolutionizing the way we interact with our mobile devices. By the looks of it, ML will be an even bigger factor in 2017.
机器学习ML在过去的12个月中迎来了大爆发。在3月AlphaGo vs Lee Sedol的比赛中,ML进入了主流。智能手机从原数据中进行学习正变革着咱们和移动设备交互的方式。
JavaScript continue its incredible pace of innovation. Catalyzed by the quick relaese schedules of web browsers, the JS standard is updated every year. The nexr edition, ES2017,is expected to be finalized in mid 2017.It will bring the deam feature of many JS developers - sync/await for working with asynchronous functions. And thanks to Babel, you can write ES2017 in every browser even today.
JavaScipt继续着它使人惊讶的创新步伐。在快速更迭的web浏览器促进下,JS的标准每一年都在更新。下一个版本,ES2017,预计将会在2017年中完成。它将带来许多JS开发者的梦想特性 async/await:用异步方法进行开发。 感谢Babel,你能够再每一个浏览器上写ES2017。
If you are looking for something more exciting, you can try our http://www.javashuo.com/tag/crystal and Exlixir, which both combine a friendly ruby-like syntax with superior performance. Or you can look into a functional lanuage like Haskell or Clojure. Two other last languages are Rust and Go which we recommend.
若是你想找点更使人兴奋的,能够试试Crystal和Exlixir,结合了友好的类ruby语法和优越的性能。或者你也能够试试函数式语言好比Haskell或Clojure。最后推荐的语言是Rust和Go。
The web platform made two major advancements recently - Web Assembly and Servive Workers. They open the gates for fast and performant web applications that bridge the gap with native compiled applications. Service Workers in particular are the enabling technology for Progressive Web Apps and bring surpport for Notifications to the web platform, with more APIs to follow in the future.
web平台目前有两个主要的发展 Web Assembly 和Service Worker。他们打开了兼备速度和性能的web app并桥接原生app。Service Worker 特别增强了PWA的技术,而且为web平台消息推送带来了支持。
Learn one or more of these: Angular.js 2, Vue.js 2.0, Ember,Aurelia/React, Bootstrap ,SASS/LESS
There is plenty of choices for the backend, all coming down to your preference of a programming language or specific performance needs. An ongoing trend in web development is business logic to move away from the backend, turning that layer into an API which is consumed by the frontend and mobile apps. But a full stack framework is often simpler and faster to develop in, and is still a valid choice fot a lot of web apps.
后端方面有不少的选择,基本依据本身偏向的编程语言而定。目前一个流行的趋势是把业务逻辑与后台分离,把业务层转向前台和移动apps。可是一个全栈框架一般可以进行更快的开发,仍然是众多web apps中有效的选择。
MySQL 8.0, PostgreSQL 9/6, Redis, CouchDB
Yarn, git, Visual Studio Code, Electron, Ansible, Docker.