React的历史记录备忘录

首先

我开始使用React已经有1年6个月了。现在我可以读写React的代码,但是在设计和实现方面考虑到性能和可维护性还不够。我大致理解了ReactHooks、生命周期和虚拟DOM的概念,但只停留在表面理解上。所以,为什么需要虚拟DOM?为什么要这么关注状态并进行渲染?这些问题我还没有完全理解。因此,为了理解React的历史背景和设计思想,我打算写一篇文章来研究它。

首先,React是什么?

React是一个在Meta公司(前身为Facebook)开发的库。2011年,Facebook的Jordan Walke先生在Facebook上使用了React,并于2013年将其开源。该库以关注UI/UX开发而引起了关注。

由于只需要一个选项,因此提供以下的翻译:
React是一个在Meta公司(以前是Facebook)开发的库。2011年,Facebook的Jordan Walke先生在Facebook上开始使用React,并于2013年将其开源。该库因其关注UI/UX开发而受到关注。

前台的历史

・20世纪90年代初,互联网问世。
・1995年,JavaScript问世。
・1996年,CSS(层叠样式表)问世。
・2005年,Google Maps发布。
・2006年,jQuery发布。
・2010年,Backbone.js、Knockout、AngularJS等框架发布。
・2011年,Web Components开始提倡。
・2013年,React发布。
・2016年,Web Components v1的规范确定。

2005年,谷歌地图发布。

GoogleMaps使AJAX通信可以实现实时地图滚动。传统地图应用因为需要在服务器端创建HTML,所以在页面切换时需要重新加载。但是通过AJAX通信,可以在页面加载时实时更新,不需要重新加载。随着AJAX通信的发展,不再需要在服务器端创建HTML,而是在前端接收数据并完成HTML的生成流程。

2006年发布了 jQuery

传统的JavaScript在不同的浏览器(如Internet Explorer,Firefox,Chrome等)中以不同的方式实现了部分功能。这意味着相同的JavaScript代码可能会在不同的浏览器中产生不同的行为。为了解决浏览器之间的差异,像jQuery这样的库变得非常重要。jQuery吸收了跨浏览器的问题,并为开发者提供了统一的API,实现了在不同浏览器上一致的行为。因此,jQuery在改善浏览器兼容性方面做出了巨大的贡献。

2010年,推出了Backbone.js、Knockout、AngularJS等框架。

出现了一个用于高效进行客户端Web开发的框架。随着框架的出现,前端开发加速了一步。

2011年提出了Web组件的构想。

Web Components是具有封装单一职责的代码块,可以在任何页面上重复使用。

2013年,React发布了。

React于2013年在Facebook内部开发并首次应用于该公司的项目中。之后,于2013年5月,Facebook将其作为开源项目公开发布。
React的特点和影响:
React是一款JavaScript库,凭借以下特点和方法引起了广泛的关注和接受。

React采用了组件化的架构。这意味着将UI拆分为可重复使用的小组件,并将它们组合起来构建复杂的UI。这种基于组件的开发方法提高了代码的可重用性和可维护性。

虛擬DOM(Virtual DOM):
React引入了一個被稱為虛擬DOM的概念。虛擬DOM具有與實際DOM相同的結構,但存在於記憶體中,用於最小化對實際DOM的更改。透過這種方法,實現了快速的UI更新和性能提升。

在React中,鼓励使用单向数据流来控制组件之间的数据流。这样有利于数据流变得可预测且易于调试。

・关于React作为一个库的特点:
React作为一个库,可以与其他库和框架结合使用。这样一来,可以更容易地将React引入现有的项目,并适用于部分应用程序的开发。

・XHP在原始设计中是服务器端渲染的思想
据说React受到了XHP的一些灵感启发。XHP是一种扩展PHP,用于Facebook内部使用的,并引入了类似于JavaScript组件化的概念。React的创始人乔丹·沃克据说采用了XHP的思想,并将其作为JavaScript组件库来实现。

具体而言,XHP提供了一种在PHP代码中表示HTML元素和组件的方法,使得在PHP中构建UI变得更加容易。React将此方法应用于JavaScript代码,并将UI组件表示为可重复使用的部分,并引入了新的概念,例如虚拟DOM。

React的发布革新了web开发的方法,提高了UI组件的可重用性、性能和开发者体验。React目前仍然非常受欢迎,被许多公司和开发者社区广泛采用。此外,React的理念和概念也对其他前端库和框架的设计产生了影响。

总结

随着前端开发需求的增大,需要考虑组件的可重用性进行设计。组件的可重用性是通过组件化设计来实现的。由于React是PHP服务器端框架XHP的一部分,因此仍然保留了每次请求时渲染整个页面的思想。

广告
将在 10 秒后关闭
bannerAds