前端开发的演变⑤ React 的出现和组件化思想以及状态管理

在之前的篇章中,我们整理了前端库泛滥的时代。而在这篇中,我们将着重整理出现在这个前端库泛滥时代中的React。

上回是这边

 


React是一个由Facebook于2013年发布的UI库。它是目前最受欢迎的前端库。
现代Web应用开发中,前端代码量增多,可读性差,且维护困难。React采用了基于组件和状态管理等设计思想,以避免这些问题,并有效地推进开发进程。
React的特点
    • 仮想DOM

 

    • 宣言的UI

 

    • 単一方向のデータの受け渡し

 

    • コンポーネント指向・関数コンポーネント

 

    Fluxアーキテクチャとの親和性

React最独特的地方在于其虚拟DOM和状态管理的设计。虚拟DOM并不直接操作浏览器提供的DOM API,而是在节点发生变化时,通过比较前后的虚拟DOM来确定变化的部分,并根据需要一次性将变化应用于实际的DOM。这个思路是React的创新之处。

可以提高性能,使测试更容易,并且可以在不依赖浏览器实现的情况下组装DOM,以便后续应用于服务器端的组件渲染等。

大规模适用的状态管理Flux
随着应用程序的开发变得越来越复杂,采用组件化方法,对状态的管理变得更加重要。尤其是当状态管理变得复杂时,需要采取适用于大规模应用程序的状态管理手段。

2014年Facebook提出了Flux应用架构的主张。通过使用Flux,可以将数据流限定在单一方向,并使状态管理更加清晰易懂。

在负责显示应用程序界面的视图中,获取所需状态是从存储区(Store)进行的,而状态的更新是通过将称为动作(Action)的数据传递给调度器(Dispatcher)来实现的,这样获取和更新的任务被分工完成。

Flux对于复杂的前端开发产生了重大影响。许多现有状态管理库和框架都在一定程度上借鉴了Flux的理念。目前,一种名为Redux的库是Flux的演进版本,并且非常受欢迎。

React登场几年来一直保持着人气并不断进化的原因不仅在于虚拟DOM的发明,还在于像Flux这样的”数据流”理念的引入也是非常创新的。

bannerAds