如何看待WordPress和SiteServer都改用React重構前端

WordPress Linux Node.js MySQL 深入淺出SiteServer 深入淺出SiteServer 2017-08-02

如何看待WordPress和SiteServer都改用React重構前端

WordPress是以PHP和MySQL為核心的開源內容管理系統,曾是互聯網上最流行的開源系統。Alexa排行前百萬的網站中曾有超過16%使用它。

如何看待WordPress和SiteServer都改用React重構前端

SiteServer CMS 是中國最強大的企業級開源CMS內容管理系統和網站群系統,能夠以最低的成本、最少的人力投入在最短的時間內架設一個功能齊全、性能優異、規模龐大並易於維護的網站平臺。

如何看待WordPress和SiteServer都改用React重構前端

1、WordPress開源前端項目Calypso

幾年前,WordPress開始重新思考技術框架和流程。儘管原有的代碼庫和流程仍能可靠的工作,但十年來積累的各種歷史遺留問題,令他們很難繼續打造能跟上時代的現代、快速、移動優化這些當前用戶所關注特性的產品。第三方開發者與設計師在也啞火了,不像過去那樣,圍繞WordPress的插件、主題層出不窮。

兩年前,WordPress的母公司Automattic 收購了雲存儲應用公司Cloudup,後者有一套用JavaScript開發的API文件分享工具。Cloudup團隊向WordPress展示了完全基於JavaScript打造一套產品的可能,並打動了他們。

到2015年中,Calypso代碼庫已足夠完備,因為完全由JavaScript、HTML和CSS寫成,因此可在Node.js服務器上運行。使用Electron,基於相同的代碼庫,他們已經發布了Mac、Windows和Linux客戶端。

Calypso採用Node.js + React開發,WordPress並沒有完全拋棄PHP,而是將其用於後端,前端使用Calypso,以擁抱今天的Web趨勢。

如何看待WordPress和SiteServer都改用React重構前端

2、SiteServer CMS 全新用戶中心

SiteServer CMS 是一款擁有十年曆史與廣泛知名度的CMS系統,今天邁出了自成立以來的最具跨越性的一步,宣佈開源並推出全新5.0版本。

SiteServer CMS宣佈徹底開放源代碼並融入開源社區,讓開發人員可以更輕鬆地集成與定製系統。遵循GPL 開源許可,將所有源代碼在 GitHub 上託管並開源(https://github.com/siteserver/cms)。你可以查看代碼、建立自己的代碼分支並且重新使用它,也可以加入SiteServer CMS開源團隊,共同維護並完善產品。

如何看待WordPress和SiteServer都改用React重構前端

SiteServer CMS 團隊對5.0 版本進行了大刀闊斧的改造,從內到外一切煥然一新。尤其是前臺用戶中心,代碼全部重寫,不再沿用 ASP.NET,而是轉用 JavaScript 和 API 調用,採用ReactJS 與Restful API來完成所有功能,使用戶中心成為單頁應用,這意味著更快速、更實時、響應更靈敏。

如何看待WordPress和SiteServer都改用React重構前端

3、WordPress放棄PHP?SiteServer CMS放棄.NET?

Calypso 只是一個前端單頁 Web 程序(single page web application,SPA),從它界面可以看到它是博主更新和管理博客內容的後臺,並不涉及到 WordPress的核心。Calypso是基於WordPress的Restful API,Restful API是基於什麼寫的?當然還是PHP+MySQL。所以 WordPress並沒有放棄 PHP,只是使用 NodeJS+React 重構了博主管理後臺。

同理,SiteServer CMS全新用戶中心也只是一個SPA,只是前臺用戶登錄用戶中心進行基本操作的一個界面,並不涉及到 SiteServer CMS的核心。用戶中心是基於SiteServer CMS的Restful API,而Restful API還是基於.NET。所以 SiteServer CMS也沒有放棄.NET,只是使用 NodeJS+React 重構了用戶中心前臺。

4、為什麼選擇NodeJS+React重構前端?

如何看待WordPress和SiteServer都改用React重構前端

WordPress官方和SiteServer CMS官方都應該是充分看到了未來web在前端渲染上特別是SPA等等對用戶體驗將是一種質的飛躍,所以選用目前最為有前景的NodeJS + React生態無疑是個不錯的選擇。具體來說有以下好處:

  • SPA在2010年開始流行(Backbone.js時代),主要好處就是反應快,所有的UI變化都在本地瀏覽器上完成,不需要重新去server請求一個頁面,也不會有明顯的頁面跳轉延時。

  • 和server的通信基於Restful API,傳輸的內容只是數據而已,沒有了冗長的 html、css和javascript 的傳輸,所以能大大提升系統的性能。

  • 將前端邏輯和渲染做成獨立的MVC結構,使其和其他移動端並列,用統一的restful API來提供服務。比如可以複用這一套 Restful API,用來給 IOS 和 Android 端以及PC端使用,大大節省開發時間,提高開發效率。

  • React已經非常成熟,而且在Facebook內部各種項目都在使用。比如Facebook首頁的整個search功能的UI都是react來完成的。React會比起一些業餘時間完成的開源項目有保障很多。前段時間阿里還搞了一場開源項目之React技術棧在螞蟻金服的實踐大會。

相關推薦

推薦中...