破折號後的名稱是來自於React繁體中文官方網站<header>
的裡面的<h1>
小字參見下圖
題目名稱包含這個原因主要想提到的地方是React是一個函式庫而不是一個框架,MDN在Introduction to client-side frameworks的頁面,在React的段落中有提到React itself is not a framework; it's a library for rendering UI components.
,該段落大意是技術上React不是一個framework,口語上我們還是常說他是一個framework的原因是React將會與其他常見的library(像是ReactDOM)等等的搭配。
相較於Angular、Vue,他們具有較完整的建立Web Application的內容,例如使用Vue官方的scaffold腳手架(Vue-cli),當我們建立起來的時候就會擁有大多要建立Web應用程式的捆包,即便我們有類似的像是Create React App可以一次性的預設安裝許多可能會用到的library,但是React官方網站的說明是沒有明確定義在文檔當中,而是使用推薦這個詞彙(Recommended Toolchains),另外像是狀態管理跟路由設置等等,這些都是屬於第三方套件。
對比 Vue官方網站introduction 就提到Vue是一個framework,這裡就可以很明顯看得出Vue和React他們稱呼自己本身的差異性了。
儘管對於React是不是一個框架這件事情在製作網站的時候或是對於許多開發人員並不太重要,但是題目的命名包含了函式庫這一個詞彙其中主要也想提到的地方是整個生態系的差異,換句話說它提供了一個渲染UI的函式庫,而當我們用React製作網站的時候,有時候必須尋找第三方的工具來搭建整個Web應用程式,即便這些常用來建置Web application通常會需要Route或者狀態管理的工具隱含了80/20法則,大多數人會使用的工具幾乎是那幾套,但不代表後來的人所創建的工具不會打敗現今盛行的工具,畢竟官方文檔沒有明確告訴你該用哪套,只有推薦,這是在寫React之前你可能所要了解的部分—生態系的不同。
為什麼命名從Create 到 React一方面是有押韻,另一方面文章預計會分成三個部分從Create React前、Create React中到Create React後來探討相關的主題。
預計三十篇的文章會分為三個部分
第一部分是在還沒撰寫React,在Create React前你可能可以了解的Javascript或是在React常用的語法介紹以及工具等等
第二部分Create React中主要探討一些React的教學、包含常見的useState、useEffect等等
第三部分Create React後探討關於非React官方網站但是常見的套件,像是Redux、Route或是其他與React相關的東西。
本系列當中至少希望讀者擁有Javascript、Html、Css的基本功,前面部分則會提到Javascript的工具或是在React常用的Javascript語法,如果是正在學習React的人也會比較深入一些hook的運作,當中會上傳一些範例檔案,跟著實作練習,如果是已經學習React的人,在後半部份介紹一些React第三方工具庫,另外文章中會不時涵蓋一些觀念是為什麼我們需要這樣做、為什麼我們需要這個工具或是為什麼我們不能那樣做以及他解決了什麼問題,而並非單單只有語法教學而已,也希望對看文章的你有所幫助,另外有需要糾正或是要討論的部分也歡迎在底下留言。