Angular vs React+Flux比较表-我的信息正确吗?



我们正在尝试做一个从Angular迁移到Flux + React的利弊列表,并附带了这个原始列表。

谁能对辩论做出反应(看看我在这里做了什么?)并证明不是这样?(请专门针对每个辩论,而不是关于lib的一般性讨论)。

谢谢!

--------------------------------------------------------------------
             |        Angular        |        React + Flux        
--------------------------------------------------------------------
Version      | 1.+ major version.    | React 0.13 - not version 1 (
             | Supported.            | minor) - not finalized, can be 
             | 2.0 - migration       | changed drastically.
             | possible easily       | Flux 2.1.
--------------------------------------------------------------------
Age          | 6 years (easier find  | react 2 years
             | developers)           |
--------------------------------------------------------------------
Framework    | Yes, MVC              | React is only view. Flux is a
             |                       | pattern, not MVC.
--------------------------------------------------------------------
Community    |More existing resources| Much less, than Angular. 
             |answers,ready 3rd party| Community smaller. Less.
             |reusable code modules. | answers, etc.
---------------------------------------------------------------------
Speed        |Rendering: slower      | Rendering: faster 
             |Load time: slower      | Load time: faster
             |reusable code modules. | 
---------------------------------------------------------------------
Testing      |U tests. e2e everything| U tests. 
             |is ready to use.       | Separated / new 
             |Has integrated system. | testing system.
---------------------------------------------------------------------
jQuery +     |Lite is build-in inside| No jQuery support.Need to check 
plugins      |Maintain 1 library     | compatibility issues with each 
             |Has integrated system. | version update 
             |                       |(need maintain 2 libraries).
---------------------------------------------------------------------

我从angular转到了react,再也不回去了。作为一名长期从事全栈开发的开发者,react框架提供了一个更清晰的框架复现代码环境。我的印象是react会更吸引程序员,而angular可能更吸引web工匠。

版本:React可能是0.13,但它是由facebook在生产中使用,所以不太可能改变太多。我首先考虑react的一个原因是谷歌对使用angular或支持它自己使用还没有明确的计划。

框架:React提供了比angular更清晰的关注点分离。React组件只需要视图上的声音。Flux存储可以处理所有的业务逻辑。至少可以说,试图从角度获得同样的清晰度是具有挑战性的。

社区:少得多,因为需要的少得多。React更容易上手。

速度:React的开发速度更快,并且可以使用可重用的组件。

jQuery +插件:我认为在html5提供一个合适的web开发平台之前,jQuery是一个很有用的工具。

只是一个开发者的意见。

向Angular 2.0的迁移并不那么清晰。

Angular的第一个稳定版本是在2013年左右发布的,我想现在应该是时候了。

我不指望React会有太大的变化,因为它实际上真的很简单(比Angular简单得多,我的意思是要学的概念更少)。

我发现React社区非常活跃,有很多现成的组件。

测试React组件可能很棘手,因为Jest (Fb推荐的工具)有很多bug。但是一旦你做对了(例如使用Mocha/plain Jasmine),你就可以在Node中进行极快的测试。另一方面,我发现Karma (Angular推荐的)缓慢且不稳定,尽管最初的测试更容易编写。

我发现React组件比Angular更容易重用,因为Angular强制你使用它的DI引擎,如果你使用browserify或webpack来捆绑你的代码(我强烈建议使用其中之一),你不需要这个。

你可以在React中使用jQuery的东西,但我建议尽可能避免这样做,因为如果你的任何插件修改了React控制的DOM部分,你的应用程序将会悲惨地崩溃。在Angular中,在这种情况下,通常只有一些东西会中断,而应用的其他部分会继续工作。(实际上哪一种行为更好并不明显,我在这里支持React)。

顺便说一句,在你的比较中,你错过了一个非常重要的一点:React可以在服务器端渲染东西,而不需要DOM。这对我来说是一个杀手级的功能。


我的另一个私人建议:如果你开始一个新项目,考虑一下你需要支持多长时间。如果一年,选择Angular。如果是2 - 3,使用React。如果更多,请阅读这篇文章,给自己更多的时间思考:

最新更新