所以到底為什麼要 逼我們 學框架?
這個問題其實已經有很多前輩寫了很詳細的文章做說明,這邊分享兩篇我覺得很不錯的文章給大家參考。
直接說結論,因為年代需求的不同,所以我們需要框架,,全文完。。
沒事,我開玩笑的,先不要走。
筆者認為這個問題很值得去探討,有人會因此拿香草 JS 註 1 的範例,跟前端框架比較,呈現出用一樣的功能,用框架寫兩行 code 而香草 JS 要寫好幾行的區別,並且誇獎框架好棒棒。
這種範例確實很不錯,可以讓初學者很快的知道框架帶來的好處,但如果沒有多加解釋,也可能讓剛接觸這行的新手覺得框架就是要拿來幹掉原始的 JS 的,甚至建立出「寫純 JavaScript / jQuery 已經過時了,學會使用框架才是潮流」這種不正確的觀念。
如果讀者已經看完上面的文章,大概已經能理解這箇中道理。
每個年代會有不同的需求需要被解決,而不同年代誕生的工具,通常也是為了處理當下的問題。
不過隨著時代的遷移,這些問題也隨之被解決 (我絕對沒有偷臭某瀏覽器) ,導致以此時此刻來去看舊時代的產物(如 jQuery),才會體會不出他存在的必要性。
不過如果要問我是不是學完框架後,以後所有需求都用框架開發就好?
這題的答案也是「不一定」。
做個比喻:
如果我們要手寫一篇作文,應該使用毛筆、鋼筆、鉛筆、原子筆哪一種筆來寫比較好?
可能就是有人喜歡用毛筆寫出文字的抑揚頓挫,有些人喜歡鉛筆接觸紙張的觸感,有些人則認為原子筆才夠正式才是主流,彼此都有等量美的感受。
又假設說,我們寫這篇作文是為了參加一場作文比賽,同時大會規定文章一律使用黑色原子筆撰寫,否則不予以計分,這時你又會怎麼選擇?
程式只是工具,更重要的是:
上面幾個問題都是我們在做作品時要去考量的事情。
當然,在沒有被限制的情況下,我們最後決定用什麼工具開發,就見仁見智了。
註1. 如果你有聽過有人在講 "Vanilla JS" ,就是在說原生的 JavaScript,由於各種 library / framework 崛起,並且都叫做什麼
XXX JS
,於是有人把原生JS
寫成Vanilla JS
,讓 JS 看起來好像有那麼一回事。
因為面試的公司都有寫 Vue 的需求
雖然是玩笑話不過卻也很實際,銜接上文,需求決定我們使用的工具。
有了就業的需求,所以我們選擇使用 Vue
為什麼沒有大公司支持的 Vue 框架,能夠與 FB 旗下的 React 還有 Google 旗下的 Angular 平起平坐,甚至被稱為「前端御三家」?
答案大概是 Vue.js 官網上大大的標題所寫的:The Progressive JavaScript Framework。一個漸進式的 JS 框架。
Vue 主打漸進式的深入使用,我們可以由淺入深的使用 Vue,作為新手初次接觸的框架,再適合不過。
不過 Vue 是專門為新手學習而設計的框架嗎?
其實也不是 XD
傳說 Vue 的作者 尤雨溪大大在使用 Angular.js 時,納悶自己並沒有要使用框架的所有功能,卻裝了一大堆他用不到的工具。決定乾脆自己寫一套「輕量」的框架,於是 Vue.js 就誕生了。
也因為 Vue 設計理念是如此,就很剛好的適合新手入門,整個故事的緣由其實是這樣才對。
雖然我們幾乎從小到大都在學英文,但大多數的朋友對於直接讀全英文的文件多少還是有一點障礙。
Vue 官網跟其他框架官網的其中一個差別,就是官網文件有中文化,而且文件不是「好心人士」協助翻譯,而是 Vue 團隊所撰寫,這無非是讓不熟悉英文的學習者的一大福音。
我甚至曾經跟別人說過,Vue 只要看完官網,差不多就能學會怎麼使用了
有經驗的開發者大概都知道,比寫出有 Bug 程式還嚴重的事情,莫過於寫出一個「沒出現錯誤訊息」的 Bug!
Vue 的一個很大的優點,就是他的警告訊息真的寫得很仔細,新手可以從 Vue 開始入門。
不要害怕那些錯誤訊息,因為在開發過程中,只要你懂錯誤訊息,錯誤訊息就會幫你
,更何況 Vue 給出來的錯誤訊息那麼親民。
欸對,Vue 的作者本人尤雨溪大大的存在,就是值得讓我們選擇 Vue 的原因之一。
今年(2023) Vue Conf 大會有幸與 Vue 作者面對面交流(還跟他尬歌),大神雖貴為一個框架的作者,但本人非常好相處,完全沒有架子。
從尤雨溪大大當天分享的內容,能體會 Vue 團隊所想創造出來的框架世界,是希望能讓開發者體會到使用 Vue 的美好。
Vue 團隊盡可能去解決開發者在社群中提出開發過程的「痛」,並且持續朝這方向努力。
我個人很期待雨溪 (嗯?很熟膩?) 所帶來給 Vue 開發者的世界,能越來越好。
容我賣個關子,我想特別寫一篇文章講這件事。
我其實還有一堆因為親身寫了 Vue,所以推薦你寫 Vue 的理由,但我實在怕廢話寫太多,讀者因此看不下去。
總之,用下去就對了。