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

2018-09-27

Lightman Wang

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

近期开课hot
logo

Follow Us

linkedinfacebooktwitterinstagramweiboyoutubebilibilitiktokxigua

We Accept

/image/layout/pay-paypal.png/image/layout/pay-visa.png/image/layout/pay-master-card.png/image/layout/pay-stripe.png/image/layout/pay-alipay.png

地址

Level 10b, 144 Edward Street, Brisbane CBD(Headquarter)
Level 8, 11 York st, Wynyard, Sydney CBD
Business Hub, 155 Waymouth St, Adelaide SA 5000

Disclaimer

footer-disclaimerfooter-disclaimer

JR Academy acknowledges Traditional Owners of Country throughout Australia and recognises the continuing connection to lands, waters and communities. We pay our respect to Aboriginal and Torres Strait Islander cultures; and to Elders past and present. Aboriginal and Torres Strait Islander peoples should be aware that this website may contain images or names of people who have since passed away.

匠人学院网站上的所有内容,包括课程材料、徽标和匠人学院网站上提供的信息,均受澳大利亚政府知识产权法的保护。严禁未经授权使用、销售、分发、复制或修改。违规行为可能会导致法律诉讼。通过访问我们的网站,您同意尊重我们的知识产权。 JR Academy Pty Ltd 保留所有权利,包括专利、商标和版权。任何侵权行为都将受到法律追究。查看用户协议

© 2017-2024 JR Academy Pty Ltd. All rights reserved.

ABN 26621887572