2018JavaScript状态调查:5个重要的思考( import takeaways) (摘译)
英文原文 (内有视频)。
以下是翻译和摘录。
最近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
5. Testing is becoming more and more important
2018JavaScript状态调查:5个重要的思考( import takeaways) (摘译)的更多相关文章
- 2017-2018年Scrum状态调查报告
HOW SCRUM IS USED 在2017年的报告中,Scrum的应用范围在扩大,已经从其发源的IT部门扩展到了相距甚远的业务部门.2017-2018年度报告的其中一个主要目标就是关注更广泛的敏捷 ...
- 2016年Scrum状态调查报告
背景 Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发,包括一系列实践和预定义角色的过程骨架.Scrum由Jeff Sutherland和Ken Schwaber在一次IBM项目合作中研究 ...
- 2015 DevOps状态调查报告
依据Puppet Labs的2015 DevOps调查报告(下载地址:https://puppetlabs.com/2015-devops-report),调查研究表明: 拥有强IT服务绩效的企业一般 ...
- 2017年IT行业测试调查报告
在刚刚过去的2017年, 我们来一起看一下2017年IT行业测试调查报告 还是1到5名测试工程师最多 Test Architects 在北上广一线城市已经出现 https://www.lagou.co ...
- Elasticsearch 集群和索引健康状态及常见错误说明
之前在IDC机房线上环境部署了一套ELK日志集中分析系统, 这里简单总结下ELK中Elasticsearch健康状态相关问题, Elasticsearch的索引状态和集群状态传达着不同的意思. 一. ...
- hdu 1074 状态压缩
http://acm.hdu.edu.cn/showproblem.php?pid=1074 我们可以断定状态的终止态一定是n个数全部选完的情况,那么它的前一个状态是什么呢,一定是剔除任一门课程后的n ...
- 怎样选择正确的HTTP状态码
本文来源于我在InfoQ中文站翻译的文章.原文地址是:http://www.infoq.com/cn/news/2015/12/how-to-choose-http-status-code 众所周知. ...
- What number should I guess next ?——由《鹰蛋》一题引发的思考
What number should I guess next ? 这篇文章的灵感来源于最近技术部的团建与著名的DP优化<鹰蛋>.记得在一个月前,查到鹰蛋的题解前,我在与同学讨论时,一直试 ...
- React Native知识11-Props(属性)与State(状态)
一:Props(属性) 大多数组件在创建时就可以使用各种参数来进行定制.用于定制的这些参数就称为props(属性).props是在父组件中指定,而且一经指定,在被指定的组件的生命周期中则不再改变 通过 ...
随机推荐
- Windows FindFirstFile利用
目前大多数程序都会对上传的文件名加入时间戳等字符再进行MD5,然后下载文件的时候通过保存在数据库里的文件ID读取文件路径,一样也实现了文件下载,这样我们就无法直接得到我们上传的webshell文件路径 ...
- 【系列教程1】Gradle入门系列二:第一个Java项目
这篇教程的主要内容是讲解如何用Gradle编译和打包一个简单的Java项目. 该Java项目只有一个需求:我们的构建脚本必须创建一个可执行的Jar文件,换句话说,我们必须能够使用命令java -jar ...
- orcl 之 导入和导出
dmp文件导入 //1 oracle的数据模式是:用户建在表空间上,表建在用户上 //2 一个用户的表就象自己的私有财产一样,没有自己或管理员授权别的用户是不能查询或修改的: //3 对于不同用户下 ...
- BZOJ5018: [Snoi2017]英雄联盟
Description 正在上大学的小皮球热爱英雄联盟这款游戏,而且打的很菜,被网友们戏称为「小学生」.现在,小皮球终于受不 了网友们的嘲讽,决定变强了,他变强的方法就是:买皮肤!小皮球只会玩N个英雄 ...
- 深度学习课程笔记(十七)Meta-learning (Model Agnostic Meta Learning)
深度学习课程笔记(十七)Meta-learning (Model Agnostic Meta Learning) 2018-08-09 12:21:33 The video tutorial can ...
- 4-Three-Matterhorn man
What was the main objective of early mountain climbers? ①Modern alpinists try to climb mountains b ...
- Unity3D学习笔记(二十六):MVC框架下的背包系统(1)
MVC背包 需求: 1.背包格子的装备是可以拖动的 2.装备栏的装备也是可以拖动的 3.当背包格子的装备拖动到装备栏时,如果是装备类型和装备栏类型是一致的能装上 4.背包的装备是按照顺序放在格子中的, ...
- NIO小纪
我们通常说的NIO大多数场景下都是基于I/O复用技术的NIO,比如jdk中的NIO,当然Tomcat8以后的NIO也是指的基于I/O复用的NIO.注意,使用NIO != 高性能,当连接数<100 ...
- Nginx配置示例
server {listen 6080;server_name local.boheadmin; location / {proxy_pass http://127.0.0.1:8087;} loca ...
- 几个C++ online test 网站
http://www.mycppquiz.com/list.php http://www.codelect.net/TestDetails/Cplusplus-Senior-Level-Test ht ...