关于react优点的初步理解

react并非是一个mvc框架,或者说他的优势不在于mvc三层的分离(反而有时候mvc是被集成在一个jsx文件里的)。 它侧重于view层,优势是组件化,UI功能模块之间的松耦合。vdom使得c层逻辑简单,而数据层的管理还要依赖于redux等。
1、虚拟DOM
(1)何为虚拟dom?是基于真实dom树建立的一个轻量级的JavaScript对象, render执行的结果得到的不是真实的dom,而是虚拟dom。
(2)vdom优势:每当数据变化时,react都会重新构建vdom树,再将当前vdom树与上一次的vdom树进行对比(Diff算法),得到区别,然后“ 仅仅将需要变化的部分进行实际的浏览器DOM更新”。虽然每次都要建立vdom树,但 vdom是内存数据(在JavaScript引擎中执行),所以速度很快。
我理解,很多框架都能实现"只更新需要变化的dom",但vdom这种实现方式,使得我们可以每次在数据变化时都去刷新整个页面,而不用关心具体要变化的是哪个dom,只需要关注于数据整体, 所以vdom带来了简单的UI开发逻辑。

2、组件化
UI各个部分被封装成小组件,小组件再组合成大组件,整个web页面由小组件组合嵌套得到。


总结:react通过虚拟dom技术简化了的ui开发逻辑,弱化了mvc中的c层,实现ui层的组件化,提高代码的复用性和可维护性,提升开发效率。


参考: https://www.cnblogs.com/Litter-Tulip/p/5589827.html

你可能感兴趣的:(编程思想,JavaScript)