用過 symfony
,phalcon
。現在剛用codeigniter
,對PHP框架也有一些了解了。但總感覺還停留在很淺的使用水平,如何深入了解這些框架,或是自己寫一個框架?
用過 symfony
,phalcon
。現在剛用codeigniter
,對PHP框架也有一些了解了。但總感覺還停留在很淺的使用水平,如何深入了解這些框架,或是自己寫一個框架?
一套框架就是一套規範,無論他裡面用的什麼組件、插件、工具,這都是「術」的層面,而資料如何流轉如何轉換才是框架「道」的層面,下載範例、嘗試自己寫例子,配置好你的IDE,X-Debug 等,打斷點弄清楚他是怎樣一個流程,推測作者如何思考、他試圖解決何種問題等。
框架本來就是:順我者昌,逆我者一邊涼快去。找到如何順應作者的思路,他能適應的問題的邊界,你也就研究透了。
沒有什麼比讀取原始碼更好。
多看程式碼,沒有捷徑
先從入口文件開始看,研究框架是如何運作的。
框架是如何載入全域設定檔的
框架是如何實現路由的
框架是封裝資料庫工廠的
最好你在不使用框架上完成兩個不同類型項目,然後再反過來看框架你會發現:
框架通常解決了專案開發中遇到的與業務邏輯無關的問題。
看起來很簡單的一句話,但是實際上很多人都不理解它,雖然很多人都聽說過使用框架是為了讓開發者把更多的精力用在業務邏輯而不是堆砌輪子。
在一個專案中,有業務邏輯(如下單)和非業務邏輯(如資料儲存),在具體業務邏輯的各個環節中有可變環節(如需要2個不同的使用者審核,也許2個也許4個)和不可變環節(審核步驟是必須的),等等問題,這些不但是選擇框架的依據,也是擴展框架的依據。
有點可意會不可言傳的意思,不知道你能理解不。
其實你這個想法並不好,你應該深入了解php,框架可能相對於原生的php稍微好用一點,但是框架的變化速度基本上都比你學習速度快。所以與其深入了解框架,不如深入的學習php,多了解基礎的東西,這樣以後學習什麼框架都快。
最近自己寫框架,開發個多設備的智能交互系統,一直想做的事.我開發框架的做法很簡單,若是照往常,要遵守的各式各樣約定五花八門,等技術和經驗累積久了,真正定下心思去做時,發現就一條原則:怎麼簡單怎麼來.別把這事想的太複雜.
這框架開發就和搬磚建房子差不多,沙子,磚頭,瓦這些堆放整齊,思路理清,剩下的就是個苦力活.
我也有這方面的疑問!你說用框架吧,基本上都會,但談得上對這個框架深入了解嗎?我看未必!