转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。
原文出处:https://blog.bitsrc.io/top-5-javascript-frameworks-past-present-and-future-8b6fda39de02

随着信息技术领域的发展,企业对于JavaScript的需求变得十分广泛,为了让前端编码更快更高效,一系列前端JavaScript框架就此诞生。

前端框架的设计初衷是为脚本编程语言提供出色的支持,让代码重复可用。简而言之,框架是由一组开发人员编写的代码块,可使整个开发过程变得简单且易于实现。从业务角度看,框架能使开发人员更容易满足客户的需求,解决客户项目开发阶段所面临的各种挑战。

那么,在众多前端框架中,哪些在2020年更受关注和追捧呢?

本文罗列了几个当下最受欢迎的前端框架,排名只是根据作者自身的使用经验、日常研究、框架的语法结构和易用性等特性进行排名。

以下是框架的排名依据参考:

  1. 是否保持增长和更新。
  2. 是否在大厂和开发者社群中受到推荐,如GitHub、NPM趋势、Google趋势等。
  3. 是否具备一个规模庞大且活跃的技术社区。

5. velte.js —— 麻雀虽小,五脏俱全

在React、Vue和Angular差不多占据了Web开发的大部分江山时,Svelte横空出世,并逐渐开始吸引越来越多人的眼球。这是一个用TypeScript编写的基于组件的开源JavaScript框架,于2016年发布。

2020年以来,Svelte的使用量急剧增加。

尤雨溪曾评价道:Svelte 的核心思想在于“通过静态编译减少框架运行时的代码量”,因此其非常适合开发小而快速迭代的项目,而且能做到极致精简。

Svelte的优势:

  1. 与React不同,Svelte没有虚拟DOM。其组件完全用HTML、CSS和JavaScript编写。
  2. Svelte编译器可编译原始JavaScript模块,该模块不依赖于框架。因此,与React、Angular和Vue相比,Svelte应用程序的捆绑包尺寸非常小。
  3. Svelte不需要较高的浏览器处理能力,即可实现类似外科手术般的方式更新DOM。

4.Ember.js —— 明显提高开发人员工作效率的生产工具

Ember.js是一款用于构建现代Web应用程序且功能全面的JavaScript框架,基于双向数据绑定概念(如AngularJS和React等SSR)运行,允许开发人员将更多精力放在创建独特的业务功能上。

由于Ember不再需要编写繁琐的代码,因此,开发人员的开发效率能够明显得到提升。目前,越来越多的一流公司开始在其产品中使用Ember,如Netflix、Microsoft和LinkedIn。

Ember自发布以来,在开发人员社区中的使用率逐渐增加。

尽管Ember主要用于Web开发,但使用Ember.js搭建的桌面和移动应用程序也同样引人瞩目,而其中的代表作品就是Apple Music桌面应用程序。

3. Angular —— 一个可靠的框架

Google在2016年推出了Angular。但是,它的前身AngularJS可以追溯到2010年。在早期,React的流行将Angular甩在后面。但是,事实证明Angular仍是开发一款可靠的企业级应用的首选。

Angular受欢迎的原因:

  1. 拥有一个维持了十多年的大型生态系统。
  2. 具备全套开发工具。
  3. 允许高质量的代码生成,具有清晰的编码结构和代码一致性。
  4. 拥有出色的文档,其库为开发人员提供了大量支持。
  5. 日益增加的社区支持。

如果将Angular与React进行比较,我们可以观察到Angular的下载量并没有增加太多,并在过去两年中几乎达到饱和水平。

2 React —— 最受欢迎的框架

React是一个开源前端库,由Facebook开发团队的软件工程师于2011年创建,随后于2013年正式开源。经过9年的发展,目前它被认为是最受欢迎的前端库之一。

React为前端开发引入了一种基于组件的、响应式的、函数式的编程风格,一举改变了单页应用程序(SPA)的发展方向。

为什么 React 如此受欢迎?

  1. React 引入了基于组件级的渲染机制。
  2. 提供了强大的服务端渲染(SSR),对SEO有良好的支持。
  3. 提供了更好并发性的React Fiber,使用了更少模板代码来管理功能组件的React Hooks,以及用于获得更好渲染效果的React suspense等功能。
  4. 一旦学会了React,可以在任何地方使用它,不仅可以用于Web应用程序,同时也可以在移动应用程序中使用(React Native)。

众多优秀的功能使React成为当今最受欢迎的框架之一,而NPM的下载量也证明了这一点。

如图所示,在过去的5年里,React在下载量方面一直在前端框架中占据着主导地位。

就Stack Overflow技术问题总量趋势看,React也同样如此。

1 Vue.js —— 其受欢迎程度已经不需要多说了

其他框架

  • Meteor一度被认为是用于开发和部署Web应用程序的全栈解决方案。
  • Mithril:用于开发SPA的UI JavaScript框架,提供了开箱即用的路由和XHR实用程序,并且快速,易于实现。
  • Aurelia被认为是JavaScript的最新版本,可以扩展HTML的多种用途,包括数据绑定。
  • Polymer:一个由Google推出的开源代码库,可以为网站创建元素而无需进入复杂的层次。支持单向和双向数据绑定。

结论

本文提及的所有JavaScript库和框架都具有巨大的潜力,熟练的掌握它们,将为您的JavaScript开发带来更多好处。

如果您有兴趣了解更多的JavaScript框架和库,可以阅读以下文章链接。

排名靠前的几个JS框架发展趋势和前景的更多相关文章

  1. 前端Js框架 UI框架汇总 特性 适用范围 选择

    身为一个资深后端工程师,面对层出不穷的前端框架,总让人眼花缭乱,做一个综合解析贴,从全局着眼,让我们明白各种前端框架的应用范围,为如何选择前端框架,从不同的维度提供一些线索,做为一个长期优化贴,欢迎指 ...

  2. (转)2018几大主流的UI/JS框架——前端框架 [Vue.js(目前市场上的主流)]

    https://blog.csdn.net/hu_belif/article/details/81258961 2016年开始应该是互联网飞速发展的几年,同时也是Web前端开发非常火爆的一年,Web ...

  3. 【转】node.js框架比较

    我偶然间看到这篇文章,转这个文章并没有什么含义,仅仅是感觉总结的不错,对于新学node的友友们来说希望这篇文章为大家对 Node.js 后端框架选型带来一些帮助,学习不再迷茫,也是让我有个保存,以后参 ...

  4. 借鉴一些关于js框架的东西

    八款Js框架介绍及比较,Dojo .Scriptaculous .Prototype .yui-ext .Jquery .Mochikit.mootools .moo.fx,componentartu ...

  5. 13个精选的React JS框架

    如果你正在使用 React.js 或 React Native 创建用户界面,可以试一试本文推荐的这些框架. React.js 和 React Native 是流行的用户界面(UI)开发平台,且都是开 ...

  6. 前端Js框架汇总

    概述: 有些日子没有正襟危坐写博客了,互联网飞速发展的时代,技术更新迭代的速度也在加快.看着Java.Js.Swift在各领域心花路放,也是煞是羡慕.寻了寻.net的消息,也是振奋人心,.net co ...

  7. Node.js 框架

    Node.js的是一个JavaScript平台,它允许你建立大型的Web应用程序.  Node.js的框架平台使用JavaScript作为它的脚本语言来构建可伸缩的应用. 当涉及到Web应用程序的开发 ...

  8. js框架简明

    jquery 主要战场还是在dom这块.其它经典怀旧的2个需要了解一下,mootools, prototype.是他们启发了js向工程化,团队化,协作化发展的转变,yui虽然听说停止开发了,但他的代码 ...

  9. Vue 浅谈前端js框架vue

    Vue Vue近几年来特别的受关注,三年前的时候angularJS霸占前端JS框架市场很长时间,接着react框架横空出世,因为它有一个特性是虚拟DOM,从性能上碾轧angularJS,这个时候,vu ...

随机推荐

  1. 在vue中使用天气插件

    在vue中使用天气插件 插件网址:  中国天气 选择自己需要的插件.生成代码复制即可 在 vue 中的使用: template 中 <div id="weather-v2-plugin ...

  2. RIP思维导图

  3. mysql-8-subquery

    #进阶8:子查询 /* 出现在其他语句中的select语句(嵌套) 分类: 按子查询出现的位置: SELECT 后面 FROM 后面 WHERE 或 HAVING 后面 EXISTS后面 */ USE ...

  4. 我的Keras使用总结(5)——Keras指定显卡且限制显存用量,常见函数的用法及其习题练习

    Keras 是一个高层神经网络API,Keras是由纯Python编写而成并基于TensorFlow,Theano以及CNTK后端.Keras为支持快速实验而生,能够将我们的idea迅速转换为结果.好 ...

  5. Matlab2016b安装流程

    来源:https://jingyan.baidu.com/article/59703552da12ab8fc007402b.html Matlab2016b安装教程 听语音 原创 | 浏览:34338 ...

  6. DevOps元素周期表—2号元素Kibana

    Kibana 是一款开源的数据分析和可视化平台,它是 Elastic Stack 成员之一,设计用于和 Elasticsearch 协作.您可以使用 Kibana 对 Elasticsearch 索引 ...

  7. CSS精灵图与字体图标

    CSS精灵图与字体图标 1. 精灵图 当用户访问一个网站时,需要向服务器发送请求,网页上的每张图像都要经过一次请求才能展现给用户.然而,一个网页中往往会应用很多小的背景图像作为修饰,当网页中的图像过多 ...

  8. 多测师讲解python _练习题003_高级讲师肖sir

    python 003作业题:# 1.分别打印100以内的所有偶数和奇数并存入不同的列表当中# 2.请写一段Python代码实现删除一个list = [1, 3, 6, 9, 1, 8]# 里面的重复元 ...

  9. Mac快捷键整理(随时更新)

    一.文字编辑 快捷键 含义 解释 control + A 到行首 A没找到对应单词,暂时认为A是字母表的开始 control + E 到行尾 E是end的缩写

  10. MVC-WebApi配置 Swagger(Web Api可视化文档)

    一.从创建MVC WebApi开始 第一步创建MVC WebApi就创建好了,接下来就进入正题,上干货 ================================================ ...