前端有三宝,angular,vue,react。目前这三大主流JS框架已经成三分之势。其中的React框架是由脸书开发的,今天我们就来聊一聊ReactJS的前世今生。
react我们都知道脸书是由扎克伯格在在大学里面做的一个项目当时他采用的语言是PHP,这门动态语言被很多人认为是"世界上最好的语言",而发展至今,脸书大部分的应用依然采用PHP作为后端开发语言我们都知道PHP是解释性的脚本语言,效率没有java,C#这些编译型语言执行效率高,因此脸书自己开发了一个php虚拟机,这个虚拟机就是大名鼎鼎的HHVM。
因为有了HHVM,使得php的执行效率有了大幅提升,因此PHP一直是脸书的主流开发语言
Jordan Walke脸书为了使得PHP更加的好用,它开发了一个PHP扩展XHP,这个扩展主要是用来在php中输出xml代码,这样可以很方便地实现网页中的一些效果受到XHP的启发,乔丹·沃尔克开发出了JS版本的XHP,也就是我们今天熟知的ReactJS最早的版本。
ReactJS一经推出,就被大量使用在了脸书的新闻流推送里面,实践证明,这种开发效率非常高效在2012年的时候,照片墙(Instagram)这个应用也大量才用了react这个技术好东西要学会分享,在2013年的js开发者大会上,ReactJS被开源了。
我们都知道开源社区是非常强大的,开源的React在短短几年就积累了大量的扩展,这让react一下子就成为了三大框架之一如果React只能做网页,我相信还不能让这么多人追捧它但是在2015年的时候,React Native的出现,让React可以开发手机应用了,这对于混生应用开发者就是一种福利。
有了它,前端工程师也可以是android和ios工程师了
react native可能大家谁也没有想过,发展如此成功的ReactJS差一点就会走向衰落在2016年的时候,脸书修改了ReactJS的开源协议,就是人们使用ReactJS做出来的产品将受制于脸书这让很多厂商和开发者望而却步。
Apache,wordpress等组织开始宣布封杀和弃用React,一时间React陷入了泥潭本来欣欣向荣的社区,一下子仿佛被泼上了一盆冷水,一下子人们都开始纷纷考虑是否要使用其它的框架值得庆幸的事,脸书很快意识到了自己错误,从React 16开始,React的开源协议又修改回了MIT协议,人们又可以愉快地玩耍了。
但是不得不提的是,经历了之前的风波,很多人心理还是会有芥帝的因为人们不知道未来脸书会不会突然又修改了开源协议很早的时候,我们前端的代码都是写在一起的,什么css,js和html都是放在一起后来为了分离,我们将js还有css都放到了单独文件里面。
而react的出现,又将js和html放到了一起,真是应了中国的一句古话:天下大势,分久必合合久必分
reactReact的组件思想让前端复用不再是纸上谈兵,前端发展已经到了工厂时代以后的前端组件将会像是一个个汽车的轮子一样,人们想搭建一个应用,只需要去市场上找寻自己想要的组件(汽车配件),然后组装即可。
UI世界瞬息万变,虽然最终可能三大框架都会被取代,但我相信React在那之前已经证明了它自己,做到了一个构建用户界面的javascript库该做的。