选择最适合项目需求的JavaScript框架,可以提高你发布有竞争力的web app的能力。
最后,你对基于JavaScript的app或网站找到了一条奇妙的思路。选择正确的框架可能对你项目的成功有着相当大的影响。它可以影响你按时完成项目并在将来维护代码的能力。JavaScript框架,如Angular.js,Ember.js或React.js,给你的代码带来结构,并保持其有序化,从而使您你的app更灵活,更具可扩展性,并更容易开发。
Web开发的变化发生的很快。几乎每个月都会引入一个新的JavaScript框架,并且现有的框架经常被更新。由于这些框架是开放源代码的,因此世界各地的大型社区也都可以不断地使之丰满起来。因此,了解每个框架的优点和它们之间的区别并不是一件容易的事情。
许多开发人员因为JavaScript框架的种类繁多而感到眼花缭乱——框架外观和功能非常不同。
让我们来比较一下三个最流行和广泛使用的JavaScript框架的优势:AngularJS,ReactJS和EmberJS。
框架 | AngularJS | ReactJS | Ember.js |
是什么? | 超级JavaScript MVW框架 | 一个不止用于构建用户界面的JavaScript库 | 一个用于创建高要求的web应用程序的框架 |
建立 | 由MiškoHevery建立于2009年 | 创建者:Jordan Walke,2013年开源 | 最初由Yehuda Katz于2007年创建叫做SproutCore,后被Facebook收购,并于2011年更名为EmberJS |
官方主页 | |||
Github | |||
Bug 报告 | |||
许可证 | MIT | MIT | BSD-3-Clause |
被使用的热门网站 | Youtube, Vevo, Freelancer, Istockphoto, Weather, Sky Store | Facebook, Instagram, Khan Academy, New York Times, Airbnb, Flipkart, Sony Lifelog | Apple Music, Yahoo!, LinkedIn, TinderBox, Netflix, Groupon |
最适合使用的地方 | 构建高度活跃和交互式的Web应用程序。 | 数据设置频繁更改的大型Web应用程序 | 动态SPA |
Angular.js是一个开源的Web应用程序框架,具有由Google提供的Model-View-Controller(MVC)架构(Angular 1)和Model-View-ViewModel(MVVM)架构(Angular 2)。它是上面提到的三个框架中最古老的。因此,它拥有最大的社区。 Angular.js通过使用指令扩展HTML的功能来解决开发SPA(单页应用程序)的问题。此框架强调让你的app快速完成和运行。
优点:
缺点:
注意。Angular 2的功能与上述不同。Angular 2不是从Angular 1重新设计的,它被完全重写了。两个版本的框架之间的巨大变化在开发人员之间引起了相当大的争议。
ReactJS是一个开源的JavaScript库,用于构建高性能的用户界面,专注于由Facebook引入和提供的惊人的渲染性能。React专注于模型视图控制器(Model View Controller)架构中的“V”。在React第一次发布后,它迅速吸引了大量用户。它是为了解决与其他JavaScript框架的常见问题——大数据集的高效渲染而创建的。
优点:
缺点:
EmberJS是一个用于创建单页面客户端Web应用程序的开源JavaScript应用程序框架,使用Model-View-Controller (MVC)模式。此框架提供通用数据绑定和URL驱动方法,用于构建不同的应用程序,重点放在可扩展性。
Ember在2007年最初被发布时,叫做SproutCore。2011年,它被Facebook收购,并重命名为Ember。它结合了本地框架,例如Apple的Cocoa的经过验证的概念以及轻量级的敏感性。
优点:
缺点: