[React扫盲]---(1)React定义与优点

声明:

Author:赵志乾

Date:2018-2-10

Declaration:All Right Reserved!!!


1、什么是React?
 
  “React是由FaceBook推出的一个开源项目,其为开发人员提供了UI界面的全新构建方式:即在JS中构建界面。”
   要全面、准确的阐明React为何物,其实并非易事。我们可以大可从React本身的特点来阐述:
    a、使用JS和XML两种技术来构建UI界面。XML技术虽然是可选的,但其声明式的特点会让元素之间的关系变得清晰可见,它也是实际应用开发过程中推荐的方式。
    b、组件概念的引入。将UI界面划分成易于重用、维护、扩展以及能够关注特定用途的小组件,从而让开发人员以组合方式来构建UI界面,实现真正的关注点分离。

    c、类似引擎的渲染机理。将应用状态从UI中分离出来,并由开发人员描述状态如何映射到虚拟DOM中。当状态发生变化时,React能够自动更新真实DOM以反映状态的变更。

    注:虽然React使用JS和XML两种技术,但其在本质上依然是纯JS开发。因为转义过程中会将标签转义为React对DOM API的直接调用。


2、React的特点造就了其两大优点:
   
a、更合理的关注点分离:在传统的Web开发中,关注点的分离是指技术分离,如文档结构由HTML来实现、样式由CSS来实现、显示逻辑由JS来实现。而在React中,关注点的分离是指功能组件的分离,如将结构、样式和显示逻辑看做UI显示的整体,并从功能角度划分组件,从而拆分出易于重用、扩展、维护以及关注特定用途的小组件。
    2、更高效的渲染方式:早期的JS框架大多采用数据绑定技术来解决复杂SPA中状态和UI界面的同步,其在维护性、扩展性以及性能方面存在不足。而React则通过响应式渲染,并引入位于内存的虚拟DOM来解决数据绑定技术所存在的不足。
   注:React的渲染过程:当用户的交互行为或后台的数据获取导致应用程序的状态发生改变时,React会通过对比当前UI和期望的UI进行对比,然后计算出要对真实DOM所进行的最小改动,最后刷新需要变动DOM部分,反映状态的变更。

猜你喜欢

转载自blog.csdn.net/zhaoyaxuan001/article/details/79305807
今日推荐