九、前端开发框架
前端开发框架
为什么要引入框架
随着互联网的深入发展,web业务也越来越复杂和多元化。以前那种几个网页拼在一起,然后随便加点特效就OK的方式已经要逐渐被淘汰了。Web项目慢慢变得复杂,产品开发过程中暴露的问题也会越来越多。
以前经常推崇一种叫做“全栈”的概念,既能开发前端,又能开发后端,类似于LAMP之类的一条龙服务。但是天才毕竟是少数,大部分人前后端一起搞,不仅开发周期长,出来的效果也确实不如人意。互联网大潮迅猛发展,前后端分离进行开发是大趋势。
于是很快,互联网公司们就开始进行前后端分离开发了。但是在 jQuery 称霸的时代里,并不能满足前端开发人员的需求。也慢慢暴露出了很多不好解决的问题:外部js引用太多,复用性低,开发周期太长,性能低,效率低等等,这些 jQuery 不好解决或者说解决不了的问题,都是前端开发要解决的问题。
于是,各种框架就应运而生了。使用框架可以解决重复引用外部js、开发周期长等问题,同时框架拥有组件化开发和性能更好等一系列的优势。
框架的演进过程
前端框架的演进过程不是一两段话能说清楚的,这里推荐一篇写得相当不错的简书博客,通过这篇博客来详细了解其演进过程。 走进前端开发——框架的演变
总结一下,随时间线发展的前端框架:
- HTML、CSS、JavaScript
- AJAX
- JQuery
- MVC、MVP、MVVM
- Angular.js、React.js、Backbone.js等
主流框架
- React
React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设Instagram 的网站。做出来以后,发现这套东西很好用,就在2013年5月开源了。
React是一个用于创建可重用且有吸引力的UI组件的库。它非常适合代表经常变化的数据的组件。使用React,您可以通过将它们分解为组件而不是使用模板或HTML来构建可重用的用户界面。
React和Angular是用于构建Web应用程序的两个顶级JavaScript框架。
- Vue
Vue是一套用于构建用户界面的渐进式框架。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。
- Angular
AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVC(Model–view–controller)、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。
它是一个以 JavaScript 编写的库。它可通过 < script> 标签添加到HTML 页面,使得开发现代的单一页面应用程序(SPAs:Single Page Applications)变得更加容易。