欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
1. js 简洁而优雅,表达力强
 
无论是动态语言简洁的语法,还是对象字面量、函数是第一等公民,更不用说 es6 里面各种优雅语法糖,在工业界主流使用的语言中,js 是非常简洁且表达力强的,这点其实比较像 python。python 用户不是老说“十几行 python 经常可以完成上百行 java 的工作”么,其实 js 也行,“人生苦短,我用 js”。
 
2. js 不断在进化,社区活跃
 
我们看看 github、stackoverflow 这两个程序员必去的网站便可知道,js 方面的开源项目、问答都是最多的。我们再看看 js 的 npm,可以说有世界上最多的 package。那么社区活跃对我们个人开发者有什么用呢?答案是实在是太有用了。
 
只要你学会谷歌,你就可以解决95%的坑,因为你现在碰到的坑早就被别人踩过了,并沉淀在了互联网中。
 
当你碰到编程中的疑惑,比如 mvvm 的实现、virtual dom 的实现、diff 算法、react state 设计、redux 最佳实践、webpack 性能优化、前端数据流等等,社区里都会出现无数相关的文章、书籍。
 
只要你有阅读源码的能力,github 上无数高水平源码都可以学习。
 
rss 团队博客如奇舞团、alinode、百度 EFE、alloyteam 等等,follow 个人 github 博客、知乎、推特如张云龙、玉伯、hax、尤雨溪等等,只要你有心,他们都可以成为你无形的老师,让你学习到他们的思想、知识的分享、成体系的难题解决方案等等。
 
再说说 ECMAScript(js)的进化,ECMAScript 标准的制定有着非常非常先进且科学的方式。不细讲, 有兴趣的话移步张秋怡的回答 如何评价 ECMAScript 2016(ES7)只新增2个特性? - 知乎 ,总之历史上各大浏览器厂商为了自己的利益干预标准的行为已经永远成为历史,也就是说 js 标准的制定再也不是某几个人的“独裁”而是全世界前端开发者共同参与的,公正、透明、民主,是无数智慧的结晶。就未来十年来看,js 语言的生命力肯定会越来越强大,二十年前 js 确实是一个玩具,但如今早已进化成为了编程世界中最有生命力的语言之一。
 
3. js 一专多长
 
一门能创造价值的语言才能历史长青,就好比 c 语言,他有着 linux 的肥沃土壤,所以即便几十年过去,依旧历史长青。
 
浏览器端99.9%的选择都是 js ,现在 react、vue、angular 三足鼎立。
 
electron or nw.js 跨平台桌面客户端, 钉钉、阿里郎、腾讯微云、Atom、Slack等等。
 
移动客户端,hybrid、RN、weex,基本上我们手机上一半以上的 app 都用了这三种技术。
 
在 web 后端,不少公司也在使用,国产框架有阿里的 egg 、奇舞团的 thinkjs 等等。
 
其他:node 写命令行工具很不错。嵌入式、机器学习等方向 node 也能胜任,不过目前只是有能力,属于小众方向。
 
对于像我这种兴趣广泛的程序员,不需要切换语言就可以玩了以上所有内容(除了嵌入式),还是非常爽的;除了机器学习嵌入式,以上内容我都在工作中使用过,且最少的都是千行以上的程序。作为认真学完 CS 专业的学生,理想还是远大的,当然不能仅仅局限在浏览器端,大一的时候其实我还是很鄙视 js 的,当时认为他仅仅只是一个浏览器端的脚本语言,但现在发现他不仅仅是一个非常优雅的 GUI 编程方式(并且也是最主流的方式),他完全有胜任全栈全端的能力。
 
当然 js 并不是完美的,他有很多缺点,但这些缺点也是有解决办法的,并且解决这些方法的道路上,我们可以获得不少提升。
 
js 的缺点及解决办法
 
坏语法以及兼容性等历史遗留问题。你需要 js good part,js 里非常强调最佳实践;兼容性使用高版本浏览器 or 使用 jquery、react、vue 等框架。
 
弱类型。对复杂项目弱类型会导致项目难以维护、易出错等,这时通过引入测试、flow、ts 等等可以解决(单个页面代码量少于1000 不算复杂项目,js 其实足以胜任)。
 
代码平均质量低,jshint、eslint、code review 等有一定帮助。js 程序员代码的平均质量不高,尤其是在一些前端技术不强的团队里,这个时候需要你站出来,要知道红宝书作者 Nicholas C·Zakas 当年就是通过写高质量的代码、帮助他人写高质量的代码成长起来的,他说自己刚写代码时质量很差,但坚持要求自己写高质量代码,当他有一天听到他主管告诉他他是团队里代码质量最好的人,并让其承担起了提高团队代码质量的任务,他就知道比起刚入门的自己,他已经变厉害了。
 
前端的高速发展是在最近五年,所沉淀下来的技术、人才等底蕴自然比不上后端,但前端在当今的多端时代,已经愈发重要。在 js 的其他领域,尤其在国外,Node 后端开发早已经被主流所接受,国内市场目前只是慢了半拍,其实 Node 在不少创业公司,和 BAT 里已经广泛使用起来了。如何让前端创造更大的价值,如何使用 Node 创造更大的价值,这早已经在国内互联网企业里开始实践了。
 
结语
 
十年前 js 无论从语法、能力、社区来看,都是一门很差劲的语言,但今天的 js 早已化蛹成蝶,未来可期。

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h63693.shtml