原生JS已死?框架要引领这个时代吗?

不知道从什么时候开始,网上博主的帖子和各大论坛的帖子中,关于Javascript的话题绝大多数都是和框架相关的,关于框架jQuery、Extjs等问题占到了大部分,我不知道提这些问题的同学当中,有多少是入门者,有多少是中级水平,有多少是高级水平,但我个人认为,不管出于任何阶段,都不应该老是把问题集中在这些框架上,应该多关注下Javascript的自身、基础,不要动不动就基于框架去做。

原生JS已死?框架要引领这个时代吗?

不是反对使用框架,不知道大家发现没有,就算这个问题是关于框架的问题,追踪到最后,还是由于基础问题引发的,要知道框架也是一行一行代码写出来的。

导致现在偶尔在网上看到一篇关于原生JS的技术文章,就觉得格外亲切,哪怕是在讨论一个基础的问题,至少代表着一种追求。

略微的分析一下,觉得现在焦点都集中在框架也是有原因的:

1. 提高生产力。框架一般都会顺带把兼容性问题解决了,另外还有丰富的控件可以使用。用框架去提高生产力没有错,但不要迷失在框架里,要知道如果脱离了框架就无法编程是很恐怖的,意味着在前端开发领域是不专业的,不扎实的。比如可以扩展一下框架,写个插件什么的,这些至少都是自己的成果。其实对于JS有一定水平,且希望团队编程风格自成体系的来讲,框架意味着绑架。
2. 技术也是一个名利圈。老话说的好,人不为己天诛地灭。一旦有个别JS工程师窥探到奥秘,得了一些精髓,那么就要想着是时候证明证明自己了。写枯燥的业务代码?没有意义,要想在这个圈子里证明自己,无外乎出书或者写一部框架。所以不管个人还是团队,选择框架的时候一定要谨慎,框架和类库还不同,框架一般会改变团队的编程习惯,而类库则不同。类库并不会要求代码在某些限定条件下去编写,只需提供所需功能即可。
3. 入门被误导。无论是培训学校还是一些比较强调就业率的高校会在最后1-2年内教实际的开发,这个时候没有涉及到的技术【比如很少有大学开设javascript课程吧】的,就直接用了某一个脚本框架(短平快)。导致了很多学生开始着眼于框架,导致对原生JS的了解越来越少。

也许有人会说,只写业务的不需要原生JS,不能说完全否定这句话,因为页面也分简单复杂之分。有很多项目,可能你加入之前他本身已经再用一个成熟框架了。但是那个框架已经很老了,不能实现你现有需求。然后你就跟你领导说,我用jQuery,用Extjs?不行的。因为就算jQuery没有代码污染,你怎么能保证你要用的插件没有代码污染?这个时候,只有用原生JS进行代码扩展(在完全不动那个framework的情况下,在外围包裹一层)是最好的。因为动原来的代码,会导致项目的其他部分变更,可能会导致预料外的风险。可能你会说这种情况很少发生,是的,当别人都解决不了问题的时候,你解决了,才能体现你的价值不是吗?用框架图省事,你一辈子都是码农。

使用框架的人最大的悲剧就是框架出了问题,自己改不了,甚至不知道是框架的问题还是自己代码的问题。 还是二者冲突导致的问题。。。
大多问框架问题的,是闹不明白出问题的原因的。
他们貌似一直在改框架的出现的各种问题,实际上时间久了你就会发现他到头来什么都没收获。
打一比方:框架接口需要一个整数,而他无意给了一个字符串,结果求人,发帖子搞了两天才发现就是一个数据类型错误,这能收获什么?他根本就没看源代码,甚至连API都没看。
这样反反复复的结果就是对这个框架越来越熟悉,一旦公司要求换框架,那就傻眼了。。。
好多人的悲剧就在于,他使用了框架,出了错,问题是让别人解决 的,因为这个一般他解决不了。。。。。。

不管是初学者,还是正在前端路上行走的同学们,一定要多关注原生JS,框架可以用,但一定要有选择性,千万不要迷失在里面,导致最后代码维护困难,骑虎难下。想升级,想替换发现已被套牢。

相关阅读