每日前端夜话,陪你聊前端。每天晚上18:00准时推送
原文:https://2018.stateofjs.com/ 翻译:疯狂的技术宅
这是一篇长篇调查报告,限于篇幅分为三次推送,今天推送最后一篇。
“任何可以用JavaScript编写的应用程序最终都会用JavaScript编写。”JavaScript已经不仅仅局限于浏览器了。
GitHub 67k stars 使用JavaScript,HTML和CSS构建跨平台桌面应用程序
平均而言,19.3%的受访者使用过 Electron ,并乐于再次使用它。
比率较高的国家和地区显示为红色,较低的国家/地区显示为蓝色(调查受访者总数少于20的国家和地区将被省略)。
GitHub 71k stars 使用React构建本机应用的框架。
平均而言,18.5%的受访者使用过 React Native ,并乐于再次使用它。
比率较高的国家和地区显示为红色,较低的国家/地区显示为蓝色(调查受访者总数少于20的国家和地区将被省略)。
大多数移动和桌面应用程序仍然使用Java,Kotlin,Objective-C或Swift等本地语言构建。
平均而言,19.3%的受访者使用过 Native Apps ,并乐于再次使用它。
比率较高的国家和地区显示为红色,较低的国家/地区显示为蓝色(调查受访者总数少于20的国家和地区将被省略)。
Apache Cordova是一个移动应用程序开发框架。
平均而言,10.1%的受访者使用过 Cordova ,并乐于再次使用它。
比率较高的国家和地区显示为红色,较低的国家/地区显示为蓝色(调查受访者总数少于20的国家和地区将被省略)。
GitHub 36k stars
使用开放式Web技术构建令人惊叹的原生和渐进式Web应用。应用程序可以运行在任何设备上?
平均而言,8.2%的受访者使用过 Ionic ,并乐于再次使用它。
比率较高的国家和地区显示为红色,较低的国家/地区显示为蓝色(调查受访者总数少于20的国家和地区将被省略)。
GitHub 15k stars
NativeScript是一个开源框架,用于使用JavaScript构建真正的本机移动应用程序。 使用Web技术,比如Angular和Vue.js,FlexBox和CSS,可以在iOS和Android上获得原生UI和性能。
平均而言,1.7%的受访者使用过 NativeScript ,并乐于再次使用它。
比率较高的国家和地区显示为红色,较低的国家/地区显示为蓝色(调查受访者总数少于20的国家和地区将被省略)。
调查受访者提到的其他答案,按提及计数排名。
此图表显示了每种技术的满意度与其总使用量之比。
ASSESS(评估):低使用率,高满意度。 技术值得关注。 ADOPT(采用):高使用率,高满意度。 采用安全技术。 AVOID(避免):低使用率,低满意度。 技术目前最好避免。 ANALYZE(分析):高使用率,低满意度。 如果您正在使用这些技术,请重新评估这些技术。
此类别清楚地显示了JavaScript如何扩展其远远超出浏览器限制的“范围”。
React Native和Electron是使用Web技术构建移动和桌面应用程序的两个主要解决方案。巧合的是,他们在满意度和用户数量方面都表现出相似的数字。
Electron的多功能性(它可以与任何UI框架一起使用,即使它通常与React或Vue.js相关联)也可以解释为什么它获得该类别的最高满意度。
但事情远未解决:Airbnb最近发表了一系列文章,解释了为什么他们决定放弃React Native而转向Native Apps用于他们的下一代产品。
作为React Native的替代方案,如果不想用React模式,在JavaScript中编写跨平台应用的开发者可以关注Weex,这可以让他们使用Vue.js生态系统。
谷歌在该领域也有很多有趣的竞争者。 Carlo是一款全新的“Headful Node应用程序框架”,由Google发布,构建于Puppeteer之上;还有Flutter:它不是像React Native那样构建一个JavaScript“桥”,而是编译为真正的本机代码。但代码是用Dart编写的,所以React Native仍然会与大多数熟悉React系统的JavaScript开发人员有关系。
JavaScript生态系统不仅限于库和框架。 我们每天都在使用所有这些小工具,包括用于代码打包的打包器和用于编写代码的文本编辑器。
此外,我们还想知道哪些新浏览器API正在吸引目光; 是的,听起来很疯狂,事实证明我们中的一些人也使用非JavaScript语言!
冰冷大量的数据自有它的地位,但也有一些东西要听听个人意见。 这就是为什么每年我们都会提出几个问题来尝试并感受JavaScript开发人员社区的脉搏。
图中选项从上到下依次为:
这是我们的首次JS颁奖! 你能猜出哪种技术在每个类别中夺魁吗? (注意:我们已从奖项中排除ES6以避免数据偏差)
获得用户满意百分比最高的库
有96.5%的用户愿意再次使用它,Jest证明它不是在开玩笑。
技术开发者最有兴趣学习的。
有87.7%听说过GraphQL的开发者想要学习它。
在“其他库”选项中获得的答案最多。
共有719个调查问卷提及VueX,使其成为迄今为止提交的最多的开放式的答案。
获得最大用户群的技术。
有14417名用户,React是今年最常用的库。
最可能会替代其他技术的新技术,不过也可能替代不了……
最可能替代Facebook团队使用的两个库:React和GraphQL。 Reason会遵循同样的路线吗?
今年我们刚刚爱上的技术。
VS Code已经成为领先的JavaScript文本编辑器,我们绝对可以理解这是为什么!
总而言之,看上去2018年大部分趋势是去年的延续。
这对我们来说是个坏消息,因为我们不能像过去那样对 React 提出激烈的讨论,或者为一名17岁的越南高中生在业余时间编写了一个新的库而感到兴奋。
但这对你来说是个好消息,因为这意味着你可以不必整天纠结要用什么技术,以及可以长期稳定的去使用你的技术!
这种状况在2019年可能会再次发生改变。尽管目前来说,前端还算是风平浪静,但是客户端如何从数据库获取数据的问题还远远未能解决,GraphQL肯定会开始在该领域制造越来越大的波浪。随着针对后端和状态管理层的GraphQL定制解决方案的出现,我们可能很快就会感觉到JavaScript再次掀起巨浪。
但就目前而言,没有必要恐慌。现在是成为JavaScript开发人员的最佳时机,而且我们愿意打赌,2019年会更加清晰!
—— Sacha, Raphaël, and Michael