即使Javascript三国鼎立,2017年依然有些框架值得关注,学习使我快乐

2017年07月13日 澳洲IT圈


点击上面蓝字关注我们

封面

2017年,谁是IT Programming最津津乐道的现象级语言


很多人心目中自然是Javascript


对于很多后端工程师或者只关注于后端的工程师来说,突然在圈儿里这两年里都在谈Javascript中的一些框架,例如Angular Js ,React Js, Vue.js。当然美剧 WestWorld西部世界中,未来机器人用的语言都是React了,所以还是有必要了解一下今年该去关注的Js框架。


文 | 灯泡点灯

编辑 | Lightman

时长 | 6 min


首先


Dan Abramov 向粉丝问了这么一句话


Javascript 世界的人们从来不会吝啬去学习新的框架。2017年必定会新一波的流行来袭


Functional Programming 不再边缘,他准备要走上红地毯,大放光彩。我列举了一些2017年值得关注的框架。


这期不会再讨论Angular,React和Vue,想了解更多详情的请参考过去的文章


Javascript百家齐放,前端工程师们你可要抓紧了,2017年应该学习的框架

WebAssembly


从哪里开始解释WebAssembly?考虑到低级代码,但是对于web来说,它的真正意图是使它易于编写任何语言(颤抖吧!)和编译为web。


这项技术的推出让很多人感到兴奋,因为很多开发者仍然与JS又爱又恨,但许多开发者钟爱某些语言


JS有显着的势头仍然,所以没有人期待它消失,WebAssembly仍然相当年轻。它只是进入一个预览,远远没有release。也就是说,你会可以时刻去关注,因为它给JS的未来带来了一个相当大的问号。但有一条我能确定,WebAssembly 不会是JS的终结


Fact : WebAssembly is not the end of JavaScript


Elm


许多开发人员在2016年爱上了Elm。Elm是一种编程语言,是对有意进入函数式编程的人的一个不错的选择。

从Elm的“Elm简介”页面,Elm是关于:


  • 实践中没有运行时错误。无null。没有undefined不是一个函数。

  • 友好的错误讯息,可帮助您更快地添加功能。

  • 结构良好的代码,随着应用程序的增长保持良好的架构。

  • 所有Elm包的自动强制语义版本控制。




babili (babel-minify)


Babili在2016年8月出现,是基于Babel的一个基于ES6 +的minifier。

那么,为什么要另一个minifier?


Henry Zhu解释了为什么Babili来了:

“Babili可以接受ES2015 +输入,而当前的minifiers主要限于ES5,需要在缩减之前转换代码。随着人们开始向客户交付ES2015,这变得越来越不重要了。 Babili也是模块化/灵活的(是一个Babel预设,意味着它支持用户插件),可以用作预设或CLI工具。 Babili也能够做出ES2015 +的具体优化。


OCaml


OCaml本身不是很相关的JS,但是对于列表中的下面两个趋势,你可以快速了解OCaml。


如果你在过去几年一直在追踪不断增长的functional programming,你可能听说过Haskell。 OCaml很快变得更喜欢Haskell,主要是因为有一些伟大的编译器使从OCaml→JS。


例如,Facebook开发者是OCaml的大粉丝,因为它帮助他们构建Hack,Flow和Infer。


BuckleScript

BuckleScript是OCaml的后端,由Bloomberg的团队创建(是的,彭博)。


正如Duane Johnson解释:


“BuckleScript,或简称bsc,是一个相对较新的JavaScript后端到OCaml编译器。换句话说,你可以使用功能类型的OCaml语言来翻译成Javascript。很酷的部分是BuckleScript是可读的(所以如果你熟悉JS,你就发现,它更容易调试),它绑定到npm生态系统。所以有两个非常好的特点的:一个强大的,functional,typed语言,另一个非常棒的Web开发库。


ReasonML

Reason是由在Facebook上构建React的同一个团队构建的,它是一种具有超级友好语法,深度编辑器集成和极佳构建工具的语言。

Sean Grove在他的演讲中很好地解释了原因:https://youtu.be/QWfHrbSqnB0?t=29m34s


Purescript


另一种强类型,高效的编程语言,编译为JavaScript。

这个特别受到“Haskell团队”的欢迎。认为它是Elm的竞争对手。

特点:

  • 没有繁重的runtime。

  • 严格的Javascript evaluation。

  • 支持Javascript对象字面符号。

  • 一个类型系统,可以说比Haskell更强大和/或更方便。

  • 一个死的简单FFI,使得Javascript库interop相对无痛。


Typescript

TypeScript是JavaScript的超集,并且都是为了提高代码质量和可理解性。它也使你的IDE体验更好,发现错误


Webpack-blocks

一个理智的方式配置Webpack。以下是您需要的唯一背书:

【图】

如果你使用webpack,你很有可能在webpack块中有很大的用处。


GraphQL


GraphQL似乎是REST的替代品,特别是对于有大量数据处理的公司。


我想我们将继续看到GraphQL在2017年的崛起。它将真正取代REST,让我们在2018年聊聊


React Storybook

React / React Native的UI开发环境。通过它,您可以可视化UI组件的不同状态并以交互方式开发它们。


jQuery 3.0


祖父jQuery还在周围!他们在2016年6月发布了一个更苗条,更快的版本,你可能没有听说过,而你正在采取所有的Egghead React课程。

Get caught up: https://blog.jquery.com/2016/06/09/jquery-3-0-final-released/



Pixi.js


Freakin 真棒,如果你正在浏览器中制作史诗2D体验,特别是使用WebGL的游戏开发,那可以研究下该library



Preact

快速3kb替代React具有相同的ES6 API。

https://preactjs.com/


inferno

Preact的替代方案,Inferno是一个快速,8kb类似React的库,用于在客户端和服务器上构建高性能用户界面。

比Preact提供更多的模块。

Rust

另一种快速语言现在编译为JavaScript(通过emscripten)。是否显而易见,有多少开发人员不想在JS中编码? :)

https://www.rust-lang.org/en-US/


Custom Elements

Custom Elements(与Shadow DOM相结合)很难被很多开发者采用(主要是因为很难理解这个概念),但在2017年它的热度可能继续上升。关键是浏览器支持,它正在增长,你会在Google Trends中查到。

就个人而言,我认为这是一个真棒的方式并且给予更多的操作性,同时还减少代码。


WebRTC


很难相信WebRTC已经五岁了。 Facebook,Slack,Snapchat和WhatsApp现在都在其服务中使用它。 WebRTC将继续在越来越多的公司采用任何形式的语音或视频通信。

让我们只是希望WebRTC的结束的创新也变得更好。


Next.js


Next.js是一个构建在React,Webpack和Babel之上的小框架。它可以帮助您更轻松地构建和部署服务器呈现的React应用程序。

ZEIT背后的团队在React社区中非常活跃,因此值得关注。

https://zeit.co/blog/next


我们是谁

澳洲IT匠人圈打造澳洲IT精英圈,希望在澳洲的广大IT认识团结互助,让在土澳的我们也能感受到高科技的光芒。组织IT社交圈,推送招聘广告,精品干货文章,澳洲业界动态,也期待更多有梦想的人加入。


我们也希望有同样理想的你加入我们。

投稿,请联系小花或E-Mail

[email protected]

商务联系

首席勾搭官 | +61 451 010 217

首席勾搭官小花 | 微信 uniapp001

首席勾搭机器人 | 微信 irobot_wechat







收藏 已赞