昨天发了一篇文章《Angular有哪些地方比Vue更优秀?》(https://zhuanlan.zhihu.com/p/28259790),碰到了小白们的痛处。从评论可以看出来,在国内这种以抄袭和跟风为荣的风气之下讲道理是很难的。
今天,我想再来撩一撩小白们脆弱的自尊。
请注意仔细看好标题,是“只会”,不是“会”,能理解区别吧?
比如某个人去你公司面试前端,你一定要问清楚他会哪些东西,除了Vue之外,还会不会jQuery?YUI?ExtJS?Dojo?Flex?Angular?React?Bootstrap?PWA?AMP?
如果他告诉你只会Vue,你一定要小心了,原因:
1、如果他只会Vue,那他就真的只会这一个东西了。但是,如果他同时还会Angular或者其它一些前端框架,一般就意味着这个人的性价比会非常高。首先,如果他会Angular,那么降低一个维度去写Vue是完全没有问题的,毕竟Vue里面大部分内容都是从AngularJS 1.x(而不是新版本Angular)里面抄出来的。其次,大量的Angular开发者都同时会一种或几种后端语言,如Java和C#,这就意味着你用同样的工钱招到了一个能干更多事情的人。
2、只会Vue的人缺乏学习能力,你招到的可能只是个“拷贝工程师”。你经常看到这种小白会吐槽TypeScript是他人生道路上的障碍,而实际上TypeScript的大部分语法都来自于ES6(还有ES7),如果这个人连TypeScript都说难,只能说明一件事情:他根本就没去学ES6和ES7(最近ES8也出来了)。实际上TypeScript的受欢迎程度远远超越你们的想象,包括目前最火的前端开发工具VS Code本身也是用TypeScript开发的,底层是Electron。从另一个角度看,iOS上的开发语言已经演进到了Swift,Android上也开始使用新语言Kotlin了,随着计算机技术的加速发展,各种编程语言还会加速演进。所以,TypeScript不是他人生道路上的障碍,他最大的障碍是他自己。
3、坐井观天。一般来说,能同时使用多种框架的开发者,心里对各种技术都有自己独到的理解。他们知道整个互联网的发展史、知道JavaScript语言是怎么一步一步发展到今天的、知道ECMA标准是怎么一回事、知道各种前端框架在设计思想上的异同,在他的心里有一个非常宏观的理解。
4、糟糕的英文水平。有很多人告诉过我,他们之所以用上了Vue,是以为中文文档写得好(这一点我赞同)。反过来说明,这帮人英文水平比较糟糕。一直以来,计算机技术的发源地都是硅谷,到今天依然如此。硅谷一直在创造各种各样的新技术、新思想,而这些东西最初都是英文版的。一本书从英文版出来,到第一本中文版面市,经常要延迟6个月以上的时间,如果你招聘的开发者连阅读英文技术文档都有困难,你们公司将会永远掌握二手资料。
5、糟糕的团队协作。从之前文章下面的评论能看出来,只会Vue的小白对他们所用的框架充满着宗教般的狂热,只准他们出来黑别人,别人如果胆敢出来哪怕是澄清一下,马上就像刺猬一样炸毛。这种人会把你的团队搅得一团糟,连道理都没法讲。
反过来也是成立的,对于正在跳槽或者打算找工作的开发者,当你去一家公司面试的时候,也要长个心眼儿,你一定要问一问,他们公司正在使用(或者曾经用过)哪些前端框架。如果这家公司告诉你,他们就只会用Vue,你要小心了,因为:
1、这种公司一定充斥着各种前端小白,这些人没用过其它任何框架,甚至连快速学习一门新的编程语言都有困难,但是这不妨碍他们操起键盘出来胡说八道。你去了之后可能要给他们提供保姆一样的服务,甚至还要教他们如何搭建Node环境。
2、这种公司的技术负责人很可能是个小白,至少是个盲目的跟风者。他自己是不会去研究技术的,听别人忽悠就好了。你去帮这种人做事,注定是不断填坑的命运。
3、这种公司一定没有规范的开发流程,可能连CI系统都没有。以Vue为例,框架和工具都没有对集成测试做任何支持,所以这种公司一定从来不做集成测试的,否则他们老早就会发现这个问题了。你去这样的公司,除了让已经学会的技能不断退化,还能学到什么新东西?
4、这种公司没有长远打算。在技术选型上的短视就意味着管理层本身是短视的,他们从来没有长远的打算,做完一个东西收一波钱完事,至于用什么技术更好,一点都不重要。在这样的公司做技术?别逗了。他们之所以要你去,只是想让你随意搭建点儿什么东西,把客户的钱忽悠到手而已。
Vue社区的小白含量是最高的,仔细观察,有直观感受吧?
附学习资源:
想了解一下Angular?请参考官方网站Angular Docs(https://angular.io)。还有我自己写的一个系列开源项目可以帮助你快速入手:NiceFish(http://git.oschina.net/mumu-osc/NiceFish) 。这个开源项目包含了典型的To C型布局的实例、To B型管理后台系统的示例、移动端Ionic实例、配合Electron打包成桌面端应用的实例。而且我给NiceFish这个项目录制了完整的视频教程,编写了详细的文档。所以,你可以发现,它的star数量已经超过了1.7K,作为一个没啥技术含量的教学项目,还是挺不错的。