我一直在评估许多SPA框架。我坚持以下两个并不能决定我应该用我的未来的项目,之一:
这两个框架承诺业务很大。我真的很兴奋角2,因为它是由谷歌支持,并已适应许多大公司。所以,我做了我自己的一些比较(手指交叉)借口角风扇)。我是一个球迷太多,但.....
下面是我做的:
2角
奥里利亚
最后比较编码两个框架的风格。显然Aurelia路上有一个明确的代码很容易理解。
唯一的缺点我能看到奥里利亚是这是一个相当新的,几乎不为人知的许多JS开发者和具有社会差这么远。
我看到他们的Microsoft Windows(角2)和苹果(奥里利亚)。苹果更稳定,有另一方面的用户特定范围的Microsoft Windows几乎每一个地方。
我该怎么办?请帮忙。
谢谢
也许,下面的AMA是对您有用,虽然它是有点老了:AMA with Aurelia Team
最重要的Q&至于你是以下(仅引用):
你相信角2.0从标准偏差?是否奥里利亚的目标是符合标准的,独立的?
在这种情况下,它不是一个信仰的问题,而是事实。如果你看一下HTML规范,你看角2,你会发现它们并不融洽。
在一年前的角2队引进其象征绑定语法。虽然这在技术上是符合标准的HTML,它是由社会,这是不符合SVG指出,(我还没有证实自己)。尽管社区成员指出了这一点,角2队取得没有改变他们的设计。在Beta 2的,他们已经实际采用其中涉及区分大小写约束附加属性/元素的语法。 HTML是不区分大小写,因此这打破与规范。其结果是,它实际上是不可能得到角2与浏览器的解析,该的DOMParser API甚至innerHTML的本地工作,因为这些机制“正常化”,这取决于浏览器外壳以不同的方式,因此外壳不能是“值得信赖”。这意味着,如果角2取决于壳体(即ngFor和ngModel ATTRS),则浏览器将不能够本地处理的。为了解决这个问题,这是我的理解是,角2队必须实现自己的专有标记解析器。底线:我不知道他们在呼唤他们的观点的语言,但它不是HTML。
对于Aurelia大街,标准符合性是非常非常重要的。我们努力与当前和新兴的标准保持一致,并没有做任何会与他们发生冲突或违反他们。我们必须添加额外的功能,这是尚未覆盖(如数据绑定),但我们已经在某种程度上符合现有的和新兴的Web标准做了。我们计划继续在时尚无限,因为我们希望奥里利亚开发商是好的Web开发人员。
我来自的角度,我为什么要使用Aurelia路上,而不是角2?我的优点是我已经知道的角度,并且有庞大的社区。谢谢。
首先,我想在这里纠正的假设是非常重要的。其假设是,角2角中的1只增量或进化改变那是不正确的。这是角1角和2之间的相同的唯一的事情是字母A,N,GU,L,A和R.他们是两个完全不同的框架,用不同的编程语言,具有不同的结构,不同的概念,不同的发展方法,不同的能力,不同的社区......不同的一切。
我对我的香皂盒这里...但我认为这是一个有点欺骗性调用这个框架角什么。这是没有联系的老一个完全不同的新库。它应该被赋予了新的名称。然而,他们给它相同的名称正是你所提到的原因。他们希望你也不想想采用角2,因为你认为它只是一个增量或进化改变,而不是完全不同的东西。
从角1移植到角2是大量的工作,甚至与他们的“移民”的工具,这是不是在所有的迁移工具。他们是一体化战略。实际上迁移需要大量的工作。你必须完全重新编写,重新思考如何编写应用程序。一些角1级的应用程序不会在角2是可以实现的,因为他们的方式,角2已经锁定或移除相关的UI的动态组合物和绑定表达式的观测某些能力。
有趣的是,它的端口其实更容易的角1个应用Aurelia路上。我们有一吨重的人在社会上谁做了这一点,已经很高兴与经验。这里有优势的短名单是Aurelia路上有超过2角:
- Aurelia酒店小得多库。角2是750K微细化以及不包括路由器,动画或HTTP客户端。这不是任何人都不应想到要去生产与不断。 Aurela是350K微细化以及确实包括路由器,动画和HTTP客户端。如果你的目标的现代浏览器,并不需要所有我们提供的polyfills,你甚至可以高达10万其他减少大小。
- 在独立dbmonster重新漆渲染基准测试,Aurelia酒店一样快或比角2.更快随着我们即将推出的UI虚拟化插件,它几乎两倍一样快,角2。
- Aurelia酒店符合标准;角2不是。看到其他AMA答案的详细信息。
- 奥里利亚更好的支持分离演示模式,如MVVM。 MVC和MVP。在奥里利亚,有视图和视图的模型之间的清晰分离;所有责任都各得其所。在角2,您必须配置您的视图模型与视图的内部实现细节,从而破坏了封装,使之难以或不可能再使用视图模型或视图。这也大大增加了维护成本,并使得它更难的开发团队并行工作的组成部分。
- 奥里利亚是非常不显眼。在大多数情况下你写的纯ES 2016或打字稿代码。你看不到的框架非常多或都在你的JavaScript代码。它保持的方式进行。这是长寿和代码的维护,以及可学习性和可读性非常重要的。角2,与此相反,必须处处进口及其元数据需要在你的代码。这是非常沉重的配置,丝毫不亚于角1,只配置也不同。
- Aurelia酒店比角2其他图书馆更好的互操作性,因为我们不使用的摘要或抽象的DOM unnuecessarily。越接近框架停留于标准和更好地利用它停留在方式,更好的互操作性将是。
- 最后,奥里利亚由迪朗达尔公司支持的公司的唯一目的是要建立Aurelia路上,它的生态系统来支持它。在另一方面,角2是谷歌的内部竞争6个UI框架之一。每一个希望让自己看起来像“谷歌祝福堆栈”,但他们都不是。在现实中,谷歌官方不备份或支持这些库。它们是建立他们的各个团队的开源方面的项目。在角2的情况下,它是由绿茶队,本名的工作是建立一个内部的CRM型应用程序构建。
还有许多其他原因......但是这是一个快速的少数。