思考

当下,前端火的一塌糊涂,从当年的切图工种成长为当前最为抢手的职业。也使得这个职业从当初的草莽转为王牌军。

前端领域最大的一个特点应该就是变化。 前一段时间可能还在流行angular,过几天大家又开始讨论react了;刚学会了grunt,gulp有兴起了,才开始学习gulp,其他人又开始玩webpack了,其他的开发同学都开玩笑,你们前端真是会玩!

这些变化或者是新的技术框架是为了解决什么问题呢?相信大家都不会没事闲的整个框架完。我的理解是为了解决日益复杂的业务需求,为了适应当前业务中前端所承担的角色。

想想前端的洪荒时代,仅仅是为了处理表单更方便减轻服务器压力,而写几行js代码,我们也不需要什么模块管理工具,更用不到什么mvc,mvvm架构。 随着AJAX概念的出现,异步加载技术大大提升了web的用户体验,也为前端提供了更多的能力。Just remember: with great power comes great responsibility.

这样,随着前端承担越来越大业务,必然导致逻辑复杂性和代码复杂度以及代码的量增加,以前只需要几十行代码能搞定的事情,现在可能需要成千上万行实现。于是,n多浏览器的兼容性问题,全局变量,模块依赖,多人开发等问题,愈发凸显。prototype ,jquery 等库风行天下,cmd, amd 模块加载技术你挣我赶。再之后,大量业务逻辑和DOM操作混合杂糅,使得大型前端项目愈发艰难,难以为继。于是,开始借鉴后端的MVC思想来解决这种问题,backbone.js发力。结合前端特点,独辟蹊径,MVVM模式的框架入雨后春笋,angular,ember等等,风靡一时,react,vue更是独领风骚。
加上 h5 history新的api 可以操作当前的path和监听path的改变使得前端路由不需要再担心SEO问题(hash的前端路由方式最大的问题就是对于SEO的支持问题),单页应用越发健壮。

文章作者: webaifei
文章链接: http://yoursite.com/2017/11/08/note-md/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 个人博客