談框架

在 Web 開發界打滾了幾年,其實對 Web Framework 的熟悉度不算太淺,但也不能算太深。

基於我個人對目前業界使用 Web Framework 的觀察,大略區分了以下數種類型。

註:基本上這是一篇嘴炮文,部份論點是個人想法,若有謬誤還望指正。

不知框為何物

Framework 對有些工程師來說是很陌生的,但這不表示說他們一定是初學者,他們可能是已經在 Web 開發好幾年,只是因為 Web Framework 這種概念是這幾年才較為蓬勃發展。

不過通常這類工程師都有一種特性,那就是墨守成規;他們會自己有自己的一套開發模式,也不會特意去學習新的架構,簡單說…他們認為活得下去最重要。

只見框形,不得框髓

剛開始使用 Framework 的開發者,他們大多是驚奇於框架所帶來的便利性,因為以往要花很多功夫的才做得出來的功能,用了 Framework 兩三下就搞定。

但多數這樣的開發者反而常被 Framework 給綁住,只要 Framework 沒有提供的功能,他們就會開始不知所措,像是失去方向感的螞蟻一樣在各大論譠到處亂竄。

框不為框,非框也

有一些已經對 Framework 處於狂熱階段的開發者,他們認為 Framework 就是要提供快速建立專案的工具、要有強大的 ORM 套件,或是其他能讓他們瞬間擁有超高產能的機制。

所以只要有 Framework 推出時,沒有這些強大的傢私,那麼就會被他們打入 Library 之列,不能正名為 Framework 。

速、信、達者,框也

有些開發團隊的領導者,常苦惱沒有一個好的方向能讓大家遵行, Framework 的出現讓他高興了好一陣子。

在研究了數個時下流行的 Framework 後,他發現 Framework 官方的那些特色展示不過就是噱頭而已;讓團隊能擁有快速、穩定、並完成客戶目標,才是一個好的 Framework 真正應該要做到的。

手中有框,心中無框

某些開發者走到了高手的地步, Framework 在他們的手上,就是一把無形的劍,念到即劍到;即便是殘劍,也無損於他們制敵於機先。

他們對 Framework 已經瞭然於胸。他們不會因為 Framework 而使創意受限,即便有些功能在 Framework 中找不到,他們也能夠用自己所學來彌補 Framework 的不足。

信手捻來都是框

創作出 Framework 的人,多數都是有著非常豐富經驗的開發者;為了能傳承這些經驗並再利用,所以他們透過程式碼把它包裝起來。

他們能把我們要花好幾個月甚至好幾年才能參透的知識,找出其共通的部份並封裝在框架裡,然後再給我們一個既定的方式,告訴我們怎麼去修改需要變動的地方。

他們懂得一切,也懂得怎麼讓我們用簡單的方式去使用這這一切。

無框即有框,善用一切而已

像 PHP 本身廣義上而言就是一個 Framework ,它黏合了所有我們所需要的工具,但絕大多數的開發者不會認為自己身處在 PHP 這個 Framework 裡。

但是我們還是能透過 PHP 讓 Web 多采多姿,讓我們的想像力無限延伸在無窮無盡地網路世界…

只要我們用對了工具。

世上本無框,本質為王

在像 Google 這種大公司裡的開發者, Framework 對他們來說反而是一種侷限;他們看到的世界遠比我們廣得多,他們處理的資料早已超過我們的想像。

他們創造的是 Framework 以外的世界,凡人呀!那便是廣大的雲端!

幸好,他們還是給了我們一架飛機。