澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

澳门新浦京娱乐场网站框架优缺点对比,web前端

6 大主流 Web 框架优缺点对比

2017/12/07 · JavaScript · 3 评论 · 框架

原文出处: Kit Kelly   译文出处:oschina   

澳门新浦京娱乐场网站 1

是该读些评论和做一些总结的时候了。当我们开始写这个系列博客的时候,我们知道 JavaScript/web 应用框架并不太好总结。我们努力对这个不可回答的问题作出回答:我该用什么样的框架?

在这篇文章中,我们将对这个系列中所提到的每款框架做一个总结,包括我们所认为的强项和弱项。另外,我们为你留下了一些值得思考的问题。

我是否需要使用框架?

如果不尝试回答这个问题就是我们的失职,这越来越成为社会上某些人的口头禅,在网络平台上的争论也已经发展到犹如不需要额外编写 API 能更简单创建 Web 应用那样的地步。就像本系列中所有的内容一样,我们的回答也大都是依据这些内容。

虽然无框架也能正常工作,但是,这也是有代价的。那些主张无框架手写 Javascript 的人,那些通常会被我们认为是斯德哥尔摩综合症(情感上会依赖他人且容易受感动的人)的人,忘记了网络平台上有多套快速发展的 API ,至少有三种不同的技术,三种截然不同的语法。web 平台规范并确定了超过 12000 个 API,事实上浏览器中的维恩图也显示了这些巨大差距。

如果你是一个有着深厚技术和经验的人,确实可以坦诚的不使用框架。但你团队的其他成员呢?你手下的那些人呢?或者当你的决定把你自己陷入困境的时候呢?这种情况下,我们将会看到一个不用框架的团队在展开冒险,最后他们会发现自己创建了一个需要自己着手维护的框架。接着就会出现寻找人才的问题,他们不需要知道框架是如何工作的,只需要寻找会调用网络平台 API 的高级技能人才或者一些自称有经验的人才,最后却发现缺少利于团队发展的技能深度和经验。

团队应该避免虚假等价(false equivalence)的陷阱,很显然,在 web 技术的应用方面具有创新性的公司在不断提高他们的市场价值和竞争力,Google、Facebook 和 Netflix 公司都是很好的例子。但是大多数公司不是这样,他们应该承认这一点。

澳门新浦京娱乐场网站 2

在Web开发的世界里,框架是很常见的东西,甚至每天都有新的框架和模板产生,你很难对它们都了解,你也很难决定应该使用哪一个框架。下面介绍几款web前端主流框架。

JavaScript,一种所有主流浏览器都支持的语言,是开发基于浏览器的 Web 应用程序的主力,几乎每年都会受到来自众多开发人员的关注。自然地,框架和库的生态系统自然而然地围绕着 JavaScript 而努力,以简化和增强 JavaScript 应用程序的开发。

Angular 2

有什么优势?

Angular 2 的最大优势在于它的流行程度。也有人认为它和 Google 密切相关的名字,会影响团队使用它。Angular 1 的迅速流行是因为那些来自其他交互式应用程序开发环境的人会发现对于开发单页面 web 应用程序具有相似的模型-视图模式。通过对 Angular 1 进行现代化演变和重新构建框架的某些部分,Angular 2 已经真正的爆发了,大量的正式的和非正式培训机构数量都让人印象深刻,开发者有很强的市场竞争力。对于用户来说它有一套用于构建用户界面的丰富组件,这也是本系列中少有的几个框架能够做到这点。

有什么弱点和挑战?

我们觉得 Angular 框架着重于在单个页面应用程序中创建用户界面并没有处理构建完整的 web 应用这个更大的关注点,如果不及早确定下来,这将会导致整个项目难以维护,在实际项目中,运行时提供不属于核心框架的技术往往让人觉得不可思议,这大大降低了 TypeScript 对最终开发者的价值。

未来将何去何从?

Angular 5 刚刚发布,这看来是 Angular 已经成功的印证了快速发布版本的承诺,在 Google 的持续支持下,Angular 会越来越成熟。

像许多的大型组织一样,Google 具有多重(分裂)的人格,从外表上看,Angular 团队和那些专注于浏览器标准的团队之间显得很和谐。但我们的观点是,和谐只是一层薄薄的窗户纸。Angular 团队对于 web 组件和渐进式 web 应用没有一个真正解决方案。我们认为,业界普遍认可的标准将会在 Angular 框架中会逐步实现,这将会影响到如何更好的构建 Angular 应用将成为一个中/长期的风险。

何时选择 Angular 2

如果你需要在一个大型的框架内获取技术资源,框架内的技术通常很容易移植;或者你需要在框架中训练开发人员,并且还要有一定的信心,他们会在短期内获得一定的开发能力,这样的话你可以考虑 Angular 2 。需要注意的是 Angular1(angular.js)与 Angular2 是截然不同的,其中的应用、技术和经验不能直接移植到 Angular2 的开发中去。

如果你的 web 应用能够很好的转化为标准的模型-视图模式,那么你也可以忽略其他直接考虑使用 Angular2 。

如果你对 Google Material UX 设计模式满意,那么 Material Angular 是遵循该模式的一种快速、简单且可靠的方式。

澳门新浦京娱乐场网站 3

 Angular 2

这些工具提供从事件处理到代码缩减和数据渲染的功能。以下是开发基于浏览器的 Web 应用程序的 JavaScript 开发人员工具包中最必要的技术汇总。

React Redux

  有什么优势?

澳门新浦京娱乐场网站 4

有什么优势?

React 和 Redux 的最大优势在于它们相对简单和专注。做一件事情并把它做好是非常困难的,但这两个库都很有效地完成了它们的目标。虽然对于某些状态容器方法可能是外部的,但大多数开发人员还是可以轻松掌握概念,并了解单向数据体系结构的好处,简化大量的用户界面应用程序。

  Angular 2 的最 大优势在于它的流行程度。也有人认为它和 Google 密切相关的名字,会影响团队使用它。Angular 1 的迅速流行是因为那些来自其他交互式应用程序开发环境的人会发现对于开发单页面 web 应用程序具有相似的模型-视图模式。通过对 Angular 1 进行现代化演变和重新构建框架的某些部分,Angular 2 已经真正的爆发了,大量的正式的和非正式培训机构数量都让人印象深刻,开发者有很强的市场竞争力。对于用户来说它有一套用于构建用户界面的丰富组件,这也是本系列中少有的几个框架能够做到这点。

Angular

有什么弱点和挑战?

React 和 Redux 最大的弱点不是它们是什么,而是它们不是什么。要构建一个功能丰富的 Web 应用程序,你需要许多功能,一旦脱离 React 和 Redux 和其他一些库的核心,你将发现一个非常分散的社区,拥有无数的解决方案和模式,不容易整合在一起。

澳门新浦京娱乐场网站框架优缺点对比,web前端主流框架优缺点对比。因此,虽然 React 和 Redux 都是非常专注的库,但缺乏经验的团队还是会很容易地生成不可维护的解决方案,而不是意识到他们所做的选择会导致性能不佳或错误。 即使有经验的开发人员也可能意识到,一个松散的架构或惯例可能会在未来困扰他们。

假省钱是一种对自己的欺骗,组织范围内采用 React 和 Redux 将轻松降低无效率问题。 没有其他库和模式的广泛约定和标准化,标准化 React

  • Redux 比较于我们正在采用的 JavaScript 来编写我们的应用程序效率要高。

  有什么弱点和挑战?

Angular,之前是由Google开发的被称为AngularJS,是用于移动和桌面Web开发的单框架。为了创建类原生渐进式web应用程序,Angular提供用于汇编应用程序的数据服务的依赖注入,以及用于复合组件的HTML模板。

未来将何去何从?

Facebook 和 React 最近从繁琐的附加专利纠纷中抽离,他们认识到,就像其他项目一样,更广泛的社区能够提高自己的声音。 我觉得这有助于 Facebook 意识到他们还不能更好地了解我们,相信我们来引导项目。 希望这将继续贯穿项目的特点和技术方向。

很难预测 React 和 Redux 的未来。 但是,将库集中在一起,确实会显着提高适应性,大多数React Redux 模式都会促进一个分离的体系结构,从而可以轻松地进行重构和迭代。 两年前,大家喜欢的还是React Flux,但整个社区很快就拥抱了Redux。 思维或模式的其他重大转变可能很容易被采纳。 这种关键能力可能会持续到未来。

  我们觉得 Angular 框架着重于在单个页面应用程序中创建用户界面并没有处理构建完整的 web 应用这个更大的关注点,如果不及早确定下来,这将会导致整个项目难以维护,在实际项目中,运行时提供不属于核心框架的技术往往让人觉得不可思议,这大大降低了 TypeScript 对最终开发者的价值。

何处下载Angular?

何时选择 React Redux ?

如果你很少需要手把手指导,并且正在寻找更好的库而不是全面的框架,那么 React Redux 可能是正确的。 在这一过程中,你不仅需要对你的团队和组织的能力保持诚实,还要在你的初始开发过程中,以及在整个应用程序的长期维护过程中保持诚实。

澳门新浦京娱乐场网站 5

React Redux

Angular项目快速入门页面使得开发者可以轻松开始使用Angular。

Vue.js

有什么优势?

渐进式构建能力是 vue.js 最大的优势,vue 有一个简洁而且合理的架构,使得它易于理解和构建。

vue 有一个强大的充满激情人群的社区,这为 vue.js 增加了巨大的价值,使得为一个空白项目创建一个综合的解决方案变得十分容易。

  有什么优势?

Angular的功能

有什么弱点和挑战?

在模型-视图应用程序和状态容器类型的应用程序之间的互相转换可能会令人感到困惑,即使没有完美包含一个模式到另一个模式的完美转换,但让人感觉希望能维持两个模式的相关性。对于那些期待 vue.js 完美解决方案,并可能导致难以维护不一致的应用程序的人来说,这至少是令人困惑的。

一个更大的挑战是 vue.js 依赖于一个单独的人,很明显,其他的项目基本是由一个组织提供支持,但这让人感觉更加有意义,虽然它有一个强大文件的社区和许多有创新的新增项目,但是 vue 核心的开发基本落在一个人身上。

我们很高兴看到 vue 更加容易接受新兴的标准方法,但是它的类似于 web 组件的模式,而不是真正的 web 组件,这可能是 vue 所得不偿失的地方。

  React 和 Redux 的最 大优势在于它们相对简单和专注。做一件事情并把它做好是非常困难的,但这两个库都很有效地完成了它们的目标。虽然对于某些状态容器方法可能是外部的,但大多数开发人员还是可以轻松掌握概念,并了解单向数据体系结构的好处,简化大量的用户界面应用程序。

2016年9月的Angular第2版的特色是基于TypeScript(Microsoft的JavaScript类型化超集)的重写,以处理在Angular初始版本中架构上存在的性能限制。

未来将何去何从?

虽然 vue.js 有相当广泛的应用,但也很难预测在中期发展中这个势头能持续多久,它不是由一个商业组织直接支持并维护,因此,这很大程度上依赖于维护者的生存能力和继续维护下去的愿望来决定。

它也表现出了一定程度的语言适应能力,并且随着某些模式的落伍和失宠而继续保持自身语言的现代化和时代性,目前没有迹象表明 vue.js 架构将来无法适应进一步发展。

  有什么弱点和挑战?

现在,开发者都在等待Angular 5,预计到到十月二十三日发布(没有第3版或第4版)。它预期的功能包括:

何时选择 Vue.js?

如果你有一个传统的 web 应用程序,并需要一个强壮稳健的应用程序层,那么 vue.js 可能是一个很好的选择,它有清晰的模式,即使没有经验的团队也能正确或者错误的使用它。尽管 vue UX 框架没有开箱即用的功能,但在 vue.js 上也能大量持续性构建应用,这将有利于你的项目。

澳门新浦京娱乐场网站 6

  React 和 Redux 最 大的弱点不是它们是什么,而是它们不是什么。要构建一个功能丰富的 Web 应用程序,你需要许多功能,一旦脱离 React 和 Redux 和其他一些库的核心,你将发现一个非常分散的社区,拥有无数的解决方案和模式,不容易整合在一起。

用于在浏览器中缓存应用程序,以加强构建渐进的Web应用程序的便利性。

Dojo 2

  因此,虽然 React 和 Redux 都是非常专注的库,但缺乏经验的团队还是会很容易地生成不可维护的解决方案,而不是意识到他们所做的选择会导致性能不佳或错误。 即使有经验的开发人员也可能意识到,一个松散的架构或惯例可能会在未来困扰他们。

构建优化器,通过删除不必要的代码使应用程序更小。

有什么优势?

Dojo2 专注于带来更多构建在状态容器体系之上的动态组件的体验模式,填补了 react redux 等框架的许多空白。

Dojo2 也知道它不单单只是在自己的生态圈发展,通过包含 web 组件导入和导出功能,也意识到需要支持不同的应用实例,但它依旧提供了一个结构化和固有的框架价值,Dojo2 的核心基础仍然是专注于提供交互性。

Dojo2 觉得它提供了大量重要的功能和解决方案,这对于构建完整的 web 应用是十分重要的,对于其他大多数框架而言这并不是重点。提供一个国际化系统和广泛的易接入性的模式也是其中之一,同时也提供一个主题系统和演进模式,用以确保不仅能为 Typescript/JavaScript 提供良好的代码开发,也能像 CSS 那样管理资源。

Dojo2 专注于提供一个结构化和符合人体工程学的开发环境,通过使用 typescript 和其他开发模式,它试图提供安全的防护机制去引导新手开发人员,通过专注于提高框架开发效率和开发安全性,旨在让开发团队能够快速交付更好的 web 应用程序。

 Vue.js

使Material Design组件与服务器端渲染兼容。

有什么弱点和挑战?

有争论的是,通过进一步延长 Dojo2 的发布时间的做法是否是在阻碍框架的发展,反观其他项目由于其资源的扩大能够继续发展和快速迭代,导致 Dojo2 目前明确的处在一个拥挤的竞争环境之中。

这也许是一个潜在的发展机遇和挑战,同时希望能够在灵活性和交互性上而不是别的特殊理由去使用 Dojo2 。

  有什么优势?

Angular 6,预计发布时间比Angualr 5玩晚发布五到六个月,将聚焦于与Angular 5相同的主题:易用性,更小尺寸和性能。Angular本身具有强大的生态系统,在IDE中有四个数据库和支持,如JetBrains IntelliJ Idea。

未来将何去何从?

Dojo2 将是未来优秀 web 框架之一,它将继续努力为构建可扩展性的 web 应用程序提供清晰的模式和指导。随着新标准的不断出现,Dojo2 将进一步努力去在框架中实现新的标准方法,继续尝试扩大框架的开放性和交互性,创造适合更多人使用的解决方案。

  渐进式构建能力是 vue.js 最 大的优势,vue 有一个简洁而且合理的架构,使得它易于理解和构建。

Aurelia

何时选择 Dojo2?

如果你想采用一个灵活的、现代的、响应式的 web 应用程序架构,并且你需要很多智能化的默认设置,那么 Dojo2 将是一个不错的选择。不用去拼凑和构建一个管道,并且为你提供更高阶的命令模式让你可以更加专注的开发项目,更加确认它是直接为你可以直接生产开发所准备的。另外,如果你了解 typescript 的优势,Dojo2 会十分严谨的使用 typescript 来管理并提供一个稳健的开发者开发环境。

澳门新浦京娱乐场网站 7

  vue 有一个强大的充满激情人群的社区,这为 vue.js 增加了巨大的价值,使得为一个空白项目创建一个综合的解决方案变得十分容易。

由聚焦的模块组成的Aurelia是由Blue Spire开发的用于移动、桌面和Web应用程序的客户端框架。它实现了快速渲染和“高效”的内存使用率。

Ember

有什么优势?

Ember.js可能是最固执己见的主流框架,这也是其最大的优势。它有创建Ember.js应用程序的正确方法,通常只有一种方法来创建应用程序。Ember.js更类似于一个产品或平台,在那里你会到一个供应商的长期支持和维护。Ember.js提供了对其平台的全面版本管理,升级工具以及对API升级的强大指导和工具。成熟,是对Ember.js的一个很好的总结。

Ember.js多年来已经证明,它可以保持其框架并使其与现代标准保持一致,同时不会过早遗忘传统浏览器。

Ember.js有一个清晰合理的架构来全面构建Web应用程序。

有什么弱点和挑战?

Ember.js可能是最固执己见的主流框架,这也是它最大的弱点。虽然社区是开放的并且接受投资,但是仍然需要找到一个正确的方式来摆脱下滑的趋势,这可能是具有挑战性的问题。

拥有一个丰富的第三方社区也可能具有挑战性。由于没有开箱即用的UX组件,这很可能会让你使用第三方套件。你可能会发现,虽然这些套件并不全面,你将需要建立或寻找其他组件。由于Ember.js没有扩展,所以对如何交互和管理DOM,你会发现你有不一致的部件,而且也没有提供一个易于管理的界面。

未来该何去何从?

Ember.js的主要贡献者是JavaScript语言标准委员会TC39的核心参与者。在过去的几年中,Ember.js对JavaScript的方向比任何其他框架都有更直接的影响。我们的观点是,这将在未来继续受影响,并帮助促进JavaScript的特性和模式。这也意味着Ember.js将继续保持与未来标准的紧密结合的关系。

Ember.js不可能在将来随时消失,尽管他们的创新很可能是通过与Ember.js紧密结合的其他项目来实现的,比如Glimmer,它为Ember.js应用程序提供了一个新的UI框架,该框架基于TypeScript。

为什么我会选择Ember.js?

如果你在框架中寻找成熟度,那么Ember.js很难出错。另外,由于Ember.js提供的内容被理解,并且有广泛的官方和官方认可的培训,以及严格的结构,找到能够建立基于Ember.js的应用程序的人才可能比其他框架更容易。也可以教大型团队如何构建应用程序,并确保整个团队的共同对话和理解。

如果你想要对社区保持信心,并批判性地思考他们平台的变化,那么Ember.js会是一个很好的考虑因素。您可以花更少的时间跟随当前的技术趋势,并更多地关注创建应用程序。

澳门新浦京娱乐场网站 8

  有什么弱点和挑战?

何处下载Aurelia?

Aurelia

优势在哪?

Aurelia有很多关于构建Web应用程序的方法,结构和想法。 这个框架的编写有很多技术上的优点。

有什么弱点和挑战?

我们估计最大的挑战就是核心发展的动力和临界物质的缺乏我们感觉很多的观点和概念都是我们对其他框架的批评性的想法,但是这些愿望都没有完全交付。它似乎就像是一个正在进行的工作一样,就像Dojo 2,但是它已经是一个已发布的框架。

大部分的Aurelia是坐落在一个人的肩膀上,如果这个人的的注意力或可用性改变,那么将会带来挑战。

未来会如何?

对于Aurelia来说,有一个很大的机会。如果它能够实现他的愿景,他将要完整的保存这个构建Web应用程序的已有的模板,但会以更健全、更完整的方式交付。我们不知道Aurelia是否能够充分的利用这次机会。

为什么我会选择Aurelia?

如果您致力于Web模型视图应用程序模块,并且你和你的团队试图想把一些事做的更好,那么Aurelia会是一个选择。它就像是一个正在寻求一个更大的社区来帮助它的发展和进化的框架。

  在模型-视图应用程序和状态容器类型的应用程序之间的互相转换可能会令人感到困惑,即使没有完美包含一个模式到另一个模式的完美转换,但让人感觉希望能维持两个模式的相关性。对于那些期待 vue.js 完美解决方案,并可能导致难以维护不一致的应用程序的人来说,这至少是令人困惑的。

你可以从GitHub上下载Aurelia。

最后的思考

真心希望这一系列的帖子至少给了你一点思考,你应该很容易有这样的想法那就是不可能有可验证的正确决定。同时,希望你也意识到没有普遍的错误决定,你应该用一些问题和思考来武装自己,帮助你选择框架。

一个框架仅仅是一些模式的体现,一些科技的集成,源码帮助我们更加容易去构建和维护网站应用,如果你是个体开发者,我们能提供的最好的建议是花费尽可能多的时间使用那些你认为可以为你所用的框架。如果你是公司的管理者或骨干领导要去做决定,请记住特点列表只是决定的一方面,有时候并不是越多越好。挑战你自己活着你的团队使用一个整体的框架,但是首先,列出对你和你的组织重要的列表,尤其是那些技术之外特点。

1 赞 1 收藏 3 评论

澳门新浦京娱乐场网站 9

  一个更大的挑战是 vue.js 依赖于一个单独的人,很明显,其他的项目基本是由一个组织提供支持,但这让人感觉更加有意义,虽然它有一个强大文件的社区和许多有创新的新增项目,但是 vue 核心的开发基本落在一个人身上。

Aurelia的功能

  我们很高兴看到 vue 更加容易接受新兴的标准方法,但是它的类似于 web 组件的模式,而不是真正的 web 组件,这可能是 vue 所得不偿失的地方。

Aurelia有处理元数据、依赖注入、绑定、模板和路由的模块。Aurelia集成了Web组件,并提供与对象的双向数据绑定。多数Aurelia代码都是以纯JavaScript编写的。其他功能包括:

 Dojo 2

一个用于构建自定义元素和给元素添加属性的HTML编译器。

  有什么优势?

支持动态加载。

  Dojo2 专注于带来更多构建在状态容器体系之上的动态组件的体验模式,填补了 react redux 等框架的许多空白。

用于单元测试的可构建耦合代码的依赖注入容器。

  Dojo2 也知道它不单单只是在自己的生态圈发展,通过包含 web 组件导入和导出功能,也意识到需要支持不同的应用实例,但它依旧提供了一个结构化和固有的框架价值,Dojo2 的核心基础仍然是专注于提供交互性。

提供创建新项目选项的Aurelia CLI,需要安装Node 4或更高版本、NPM 3和Git。

  Dojo2 觉得它提供了大量重要的功能和解决方案,这对于构建完整的 web 应用是十分重要的,对于其他大多数框架而言这并不是重点。提供一个国际化系统和广泛的易接入性的模式也是其中之一,同时也提供一个主题系统和演进模式,用以确保不仅能为 Typescript/JavaScript 提供良好的代码开发,也能像 CSS 那样管理资源。

与Polymer库的集成,用于构建可重复使用的web组件。

  Dojo2 专注于提供一个结构化和符合人体工程学的开发环境,通过使用 typescript 和其他开发模式,它试图提供安全的防护机制去引导新手开发人员,通过专注于提高框架开发效率和开发安全性,旨在让开发团队能够快速交付更好的 web 应用程序。

在模板引擎中,用于组件继承时支持bindable的继承。

  有什么弱点和挑战?

web前端/H5/javascript学习群:250777811

  有争论的是,通过进一步延长 Dojo2 的发布时间的做法是否是在阻碍框架的发展,反观其他项目由于其资源的扩大能够继续发展和快速迭代,导致 Dojo2 目前明确的处在一个拥挤的竞争环境之中。

欢迎关注此公众号→【web前端EDU】跟大佬一起学前端!欢迎大家留言讨论一起转发

  这也许是一个潜在的发展机遇和挑战,同时希望能够在灵活性和交互性上而不是别的特殊理由去使用 Dojo2 。

Backbone.js

  Ember

Backbone.js ,也就是 Backbone ,为重度 JavaScript 应用程序提供了结构体。它具有带有键值绑定和自定义事件的模型,它们是一个支持可枚举函数和声明性事件处理视图的 API 的集合。

  有什么优势?

何处下载 Backbone.js ?

  Ember.js可能是最固执己见的主流框架,这也是其最 大的优势。它有创建Ember.js应用程序的正确方法,通常只有一种方法来创建应用程序。Ember.js更类似于一个产品或平台,在那里你会到一个供应商的长期支持和维护。Ember.js提供了对其平台的全面版本管理,升级工具以及对API升级的强大指导和工具。成熟,是对Ember.js的一个很好的总结。

你可以从 Backbone 项目网站下载开发版本和产品发布版本。

  Ember.js多年来已经证明,它可以保持其框架并使其与现代标准保持一致,同时不会过早遗忘传统浏览器。

Backbone.js 的功能

  Ember.js有一个清晰合理的架构来全面构建Web应用程序。

Backbone.js 中的数据是使用可以创建、校验、销毁并保存到服务器的模型表示的。这些模型通过 RESTful JSON 接口连接到应用程序。使用 Backbone.js 时,当 UI 操作提示要更改模型的属性时,该模型会触发更改事件。显示模型状态的视图会收到此更改的通知并重新渲染他们。

  有什么弱点和挑战?

Ember.js

  Ember.js可能是最固执己见的主流框架,这也是它最 大的弱点。虽然社区是开放的并且接受投资,但是仍然需要找到一个正确的方式来摆脱下滑的趋势,这可能是具有挑战性的问题。

Ember.js 是一个强调开箱即用的高效率的框架。它具有集成的模板,被称为句柄条,旨在减少代码编写量; 在数据改变时,这些模板会自动更新。

  拥有一个丰富的第三方社区也可能具有挑战性。由于没有开箱即用的UX组件,这很可能会让你使用第三方套件。你可能会发现,虽然这些套件并不全面,你将需要建立或寻找其他组件。由于Ember.js没有扩展,所以对如何交互和管理DOM,你会发现你有不一致的部件,而且也没有提供一个易于管理的界面。

从哪里获取 Ember.js

 Aurelia

可以在 NPM 中输入 npm install -g ember-cli@2.15 来安装 Ember.js 。

  优势在哪?

Ember.js 的功能

  Aurelia有很多关于构建Web应用程序的方法,结构和想法。 这个框架的编写有很多技术上的优点。

Ember.js 的功能包括:

  有什么弱点和挑战?

专注于简化开发的 API 。

  我们估计最 大的挑战就是核心发展的动力和临界物质的缺乏。我们感觉很多的观点和概念都是我们对其他框架的批评性的想法,但是这些愿望都没有完全交付。它似乎就像是一个正在进行的工作一样,就像Dojo 2,但是它已经是一个已发布的框架。

专注于让开发者使应用程序特例化的通用风格。

  大部分的Aurelia是坐落在一个人的肩膀上,如果这个人的的注意力或可用性改变,那么将会带来挑战。

Ember.js 3.0 稳定版会在2018年1月1日发布测试版之后的2月12日发布。在 2.x 版本中不推荐使用的 API ,依然是支持的,这些 API 将在 Ember.js 3.x 中被清除。 一个 add-on 应将支持在 3.x 代码行中的 Ember.js 2x API 。

  一个框架仅仅是一些模式的体现,一些科技的集成,源码帮助我们更加容易去构建和维护网站应用,如果你是个体开发者,我们能提供的最 好的建议是花费尽可能多的时间使用那些你认为可以为你所用的框架。如果你是公司的管理者或骨干领导要去做决定,请记住特点列表只是决定的一方面,有时候并不是越多越好。挑战你自己活着你的团队使用一个整体的框架,但是首先,列出对你和你的组织重要的列表,尤其是那些技术之外特点。

Ext JS

 相关阅读:WEB前端开发技术薪酬为什么那么高?

与其他知名的 JavaScript 框架不同,Sencha 的 Ext JS 并不是开源的; 它是一种商业产品。它用于构建面向企业的数据密集型跨平台 Web 应用程序,需要多种形式的因素。

何处下载 Ext JS ?

The Ext JS 软件可以从 Sencha 的 Ext JS 页面下载到。

Ext JS 的功能

Ext JS 框架提供了许多组件,例如数据网格和日历。Ext JS 可与 Sencha Architect 等工具一起使用,用于拖放 HTML5 应用程序开发,以及 Sencha Themer ,用于应用程序的样式设置。

Ext JS 的构建器正在考虑如何使用 Ext JS 的架构执行长期的任务。Sencha 计划在今年年底或明年初发布 Ext JS 7 ,但是由于 Sencha 收购了 Idera ,这些计划现在被搁置了。关于提供符合最新的 ECMAScript 标准和使用 NPM 包管理器和 Webpack 模块绑定器的可行性讨论已经举行过了。

jQuery

JavaScript 的 jQuery 库的 API 提供了操作 HTML 文档、事件处理和动画等功能。jQuery 库由 JS 基金会管理,于 2006 年 8 月首次发布。

哪里下载 jQuery?

jQuery 可以从jQuery 项目网站下载。

jQuery 的特性

jQuery 并不是用来构建应用程序的框架,但它提供基本的 API,很容易在浏览器中操作 DOM。jQuery 也可以和应用程序构建工具一起使用,比如 Angular 和 React/Redux。

jQuery 团队现在差不多每年发布两个版本,从现在到 2018 年中只会发布一些小版本。除此之外,jQuery 4.0 和后续版本要求使用“下一代”JavaScript完全重写,这需要对构建系统进行更新。在 jQuery 4 和后续版本中还有如下计划:

重写 jQuery 的速度框架,跟踪性能回归

新设计的事件模型,会丢弃特殊事件钩子,避免使用 jquery.Event 类的包装

支付新的原生选项,比如被动事件监听器

Meteor

Meteor(又名 Meteor.js )是一个 JavaScript 框架,可以使用较少的代码更快地开发 Web、移动和桌面应用程序。开发人员可以在所有环境中使用 JavaScript ,包括在应用服务器、Web 浏览器和移动设备上。

何处下载 Meteor

Meteor 软件可以从 Meteor 项目网站下载。

Meteor 的功能

Meteor 平台,也被称为 Meteor.js ,包括用于构建已连接客户端的响应式应用程序的技术,构建工具以及一系列来自 Node.js 和 JavaScript 社区的软件包。使用 Meteor 后,服务器会通过设备发送数据而不是HTML,然后在客户端渲染它。

Meteor 1.6 是下一个发行版本号,其重点是升级到 Node.js 8,这将让 Meteor 更好地利用服务器上的 ECMAScript 功能,从而提高构建性能。

Polymer

Google的Polymer JavaScript库旨在使开发人员能够充分利用Web组件,为可重用的自定义元素提供与浏览器内置元素的交互提供可能。

何处下载Polymer?

你可以从Bower包管理器上安装Polymer。

Polymer的功能

5月份发布的Polymer 2.0版通过去掉DOM操作时使用的Polymer.dom改善了互操作性。这使得使用其他库和框架时再使用Polymer组件更容易。

Polymer 2.0中的其他功能包括:

数据系统的改进,以提升数据通过和元素之间的调试和传递。

ECMASript 2015类和标准的自定义元素。Polymer第1版中的方法用于定义元素,而不是使用Plymer的工厂方法。但是工厂方法仍然通过兼容性层来支持。

更简单的数组处理。

即将发布是Polymer 3.0,它目前是预览版本,功能包括Bower和HTML import、NPM和ECMAScript 15模块。Bower和HTML imports功能适用于基于HTML基于导入的工作流程。但是,他们把Polymer置于网络开发的主流之外,并且使人们难以使用其他框架或构建工具。

React

Facebook用来构建用户界面的 React 库 ,提供基于组件的声明性的视图(view),使用JavaScript来编写组件逻辑。React库,也就是React.js,并不支持模型(model)和控制器(controller),但是可以通过其他一些相关的项目完善这些功能。

哪里下载 React

React 可以从 React 项目网站 下载。

React 特性

你可以使用React的 JSX 语法 来描述用户界面。JSX允许在一个组件中混合使用JavaScript和HTML。在构建的过程中会转换成纯JavaScript。

为了提高性能,React 在最近的发行版React 16 中对架构进行了重写,称为Fiber。这次更新的主要特点是着重于为了处理大型组件的异步渲染。但是React本身还并不支持异步渲染,这将会在React 16.x的版本线中实现。

React 16的其他改进包括:

提供组件堆栈追踪,使得调试更加简单。

可以在组件的渲染方法(render)中直接返回字符串或者数组。

新的更快的,基于流的服务器端渲染。

更接近原生应用的性能。

在一些组织如Apache软件基金会反对其许可条款后,React 重新修改了其基于BSD MIT Patents的新的许可证。Apache 担忧基于BSD Patents 的许可使得软件对于下游项目来说,不再是一个“万能捐赠者” 。

Vue.js

Vue.js是React的竞争对手之一,声称更快的渲染速度。其核心库聚焦于视图层,并且框架主要是为了增量实现。

何处下载Vue.js?

Vue.js软件可以从Vue.js项目网站下载。

Vue.js的功能

声明式渲染是Vue.js中的关键,使用模板语法将数据渲染到DOM中。Vue.js组件系统是一种抽象,支持由可自包含开发和可重用的模块组成的大型应用程序。Vue.js中的组件本质上是一个具有预定义选项的Vue实例。

Vue.js 2.5将于2017年10月到来,具有更好集成了TypeScript功能。稍后版本的Vue.js的计划包括:

使TypeScript用户更容易在Vue.js中启动新项目

使用代理重写框架的响应式系统

支持WebAssembly可移植代码格式

吸收Web组件更多功能的能力

web前端/H5/javascript学习群:250777811

欢迎关注此公众号→【web前端EDU】跟大佬一起学前端!欢迎大家留言讨论一起转发

觉得本文对你有帮助?请分享给更多人

本文由澳门新浦京娱乐场网站发布于新浦京娱乐场官网,转载请注明出处:澳门新浦京娱乐场网站框架优缺点对比,web前端