我想站在一个初涉现代前端工程的年轻人的角度来回答下这个问题.

其实早在2016年(大二升大三的暑假),我在公司实习时,就接触了AngularJS.当时经过2个月的实习,说实话,还是没懂AngularJS的精髓在哪,但是勉强能写点东西.具体没印象了,不过重点来了!!短短一年,17年再实习时,发现换了Angular2.我想,不就是个2.0,我用过AngularJS的,应该差不多吧.然后…你们可以脑补我拿到ng2的代码时的呐喊:这!都!是!啥!?

完全看不懂代码,也没什么人教(公司没ng大牛),就结合百度,边写边猜.当时我对前端的认知是这样的:

  • 一个基本包含html,head,body的文档
  • 在head里引入css和js文件
  • 保存,浏览器刷新看效果

结果当时拿到手的ng项目是这样的

  • 为什么我的页面没有头部?都是业务代码?
  • 为什么我JS都不用引,他就能找到?(其实是TS,当时以为这俩是一样的)
  • 为什么我都不用F5,他就自动刷新了?这就是人工智能吗?!
  • 为什么代码上有import??这不是java的吗?
  • 这个cmd(ng-cli)是啥!?这绿绿的还挺好看的.
  • 网上提问,都告诉我说这是rxjs,这是啥?es6又是啥?
  • 为什么代码要打包?不是写完直接打开就可以运行的吗?这代码这么邪乎?

还有很多很多问题..当时都是扑面而来,我的内心只有一句:卧槽!后来,慢慢的就记住了怎么写,会有怎样的效果,但是你要和我讨论,什么是组件化,什么是模块化,什么是可维护的架构,得了吧,都是玄学~!

后来,开学了,我就从公司离职了.但我总觉得,Angular这么难,我好不容易会用了(也就是知道一些API是怎么用的而已),我不能忘记了这么复杂的技术!然后我就自己做了个项目,重新理解一些概念.经过hin长hin长时间的研究,终于理解了,rxjs等一系列的黑科技.当有人问我Angular好在哪里时,我以前可能会这样回答:

写代码不用刷新?代码会自动提示?*ngFor比较方便?这些算好处吧.

可现在我能这样回答:

Angular使用了MS的TS语言,对类型和语法有了更强的制约,使得开发体验极好.异步加载模块,大大提升了用户体验.组件化开发,具有高可维护性的特点,更利于分配工作.自带ng-cli,将许多黑科技揉为一体,使得开发者更容易上手.

这就是我研究了这么长时间的成就——更加会吹B了.

言归正传,Angular真的是上手难度太高了,很多概念大家都不知道,人都是懒的嘛,我也不想学这么复杂的玩意.更不能要求每个人对于这种高难度的产品,都愿意去尝试,可如果你真的很想接触这种可吹b的框架,但是感觉很多资料都看不懂怎么办?没关系!可以参考下我的教程

(不定期更新)

用非常通俗易懂的语言来告诉你怎么上手Angular,不会扯很高级的语言,尽可能用普通人的交流方式.是的,我就是在打广告,不过我也是为了推广Angular嘛,这不都是为人民服务嘛!

文章来源于互联网:2018年已过一半,为什么绝大部分前端团队还是无法重视Angular?

发表评论