英文原文 (内有视频)。
以下是翻译和摘录。
最近JS状态调查结构出来了,如果你关心网页开发,你会关心这些结果。
本文探索5个takeaways并总结这些结论。
- 1. JavaScript Had to Evolve
- 2. Tools Are Better and It Makes a Difference
- 3. JavaScript is More Than Just Web
- Mobile Apps
- 4. Servers Are Slightly Less Needed
- 5. Testing is becoming more and more important
- Recap
1. JavaScript Had to Evolve
如果你看了这篇文章,就理解了JavaScript 不得不发展和不断的继续进化。
我想从JS开始的程序员没有注意到其他语言的许多令人惊讶的功能,这次调查结果反应了这个情况。
JavaScript is still playing catchup in many ways! JS仍在不断的追赶。
TypeScript
a superset of JS tha compiles to clean JS output.
它的使用不断增长,更多开发者希望让JS的结构更像Java或C#
开发者喜欢JS的灵活性,但有时希望它更有结构一些
ES6
它带来了很多新功能,大多数人喜欢用classes, arrow functions。
2. Tools Are Better and It Makes a Difference
工具驱动Js的进化。
JavaScript Flavors(js调味品)
如之前谈过的ES6和TypeScript。
ES6更像是一系列的功能而不是调味品。
但TypeScript感觉 feels apt here.
它使用工具转化让浏览器理解的标准JavaScript。
Command Line Interfaces(CLIs)
使用大多数Js框架,你会得到一个command line interface。
例如通过NPM按照Js包就是通过command line。
如果你看主要的3个前端框架Angular, React and Vue, 它们生成新程序,开始一个live-reloading server, 构建最后的assets等等都需要CLIs。
3. JavaScript is More Than Just Web
JS能用于几乎任何平台。
Desktop Apps
例如Electron.js (https://electronjs.org/)
让开发者使用JS, HTML, CSS创建跨平台的桌面应用。
Visual Studio Code用Electron建立,并在网页开发中,快速成为知名的开发编辑器。
Mobile Apps
过去,网页技术通过包裹一个web app在一个web view组件内来创建移动app。一般来说,这种方法性能弱于native applications。
Cordova follows this approach, and is still a viable option.
However, React Native has gained lots of traction over the past couple of years.
It allows you to create truly native applications meaning you don't have to sacrifice performance.
As popular as React is (look above), React Native becoming more widely used just makes sense!
Progressive Web Apps
在过去一年得到了大量关注。它是web app 和 mobile app的一个混血。
允许用户在它们的设置上install the page。
Server
你部不仅关注web ,Mobile, Desktop的JavaScript。 你也使用Node.js写server code。
大量公司喜欢Netflix, Paypal, Uber, and LinkedIn leverage Node,
越来越多的新手使用它们,而不用PHP, Ruby, etc.
和其他JS目录一样,Node上也有一些框架。
Express.js是目前最著名的。
还有其他一些框架,参考https://scotch.io/bar-talk/10-node-frameworks-to-use-in-2019
4. Servers Are Slightly Less Needed
“Serverless” 出现在“Other Libraries”章节的“后端框架工作”。
Serverless Functions由第三方提供,负责server软件维护和管理。
这意味着程序员写后端的代码会减少。
Static Site Generators
因为前后端的解耦,开发者常常使用Serverless Functions来代替写一个server。
更多了解: 5 Reasons Static Sites Rock.
FireBase
它提供完全的后端服务。
由google提供的全面的移动开发平台,提供了另一种可选的写后端的方法。
它管理hosting, authentication, cloud storage, etc.
提供任何你需要的功能来支持你的web app