php技術(shù)的快速進(jìn)步,最好的途徑就是閱讀源代碼了。自己也閱讀了很多開源的程序,感覺方法很重要,好的方法可以達(dá)到事半功倍的效果。
一份好的源代碼例如dz的論壇,wind論壇,帝國cms,dedecms等,都具有自己的一套設(shè)計思路和設(shè)計模式,所以在看某個產(chǎn)品之前就要做好心理準(zhǔn)備,可以把自己的經(jīng)驗和這些產(chǎn)品做對比,但千萬別一直用自己的思維去評判。一句話就是“以學(xué)習(xí)和批評的辯證思想去看待”。
那具體的我們怎樣去閱讀一份php的源代碼呢?
一。先把源代碼安裝起來,結(jié)合它的文檔和手冊,熟悉其功能和它的應(yīng)用方式。
二。瀏覽源代碼的目錄結(jié)構(gòu),了解各個目錄的功能。
三。經(jīng)過以上兩步后相信你對這個開源的產(chǎn)品有了一個初步的了解了,那現(xiàn)在就開始分析它的源碼吧。這一步我們開始分析源代碼框架。例如入口方式是單入口還是多入口,頁面之間的調(diào)用規(guī)則,能根據(jù)規(guī)則找出某個功能用到的頁面。
四。熟悉源代碼的代碼寫作風(fēng)格,例如縮進(jìn)方式,排版格式等。
五。熟悉一下源代碼用到的數(shù)據(jù)庫和表,可以參考它的技術(shù)支持文檔。
六。經(jīng)過以上幾步相信大家已經(jīng)對這份源代碼有了更深刻的了解,不過這種了解還只是表面的,下來我們從6個方面具體的去分析它吧:
1.入口構(gòu)造以及頁面調(diào)用方式的具體實現(xiàn),如果閱讀時看到工具類和工具函數(shù),盡量去熟悉一下。這一步的分析可以學(xué)習(xí)到源代碼的系統(tǒng)架構(gòu)方式。
2.分析源代碼用到的工具類和工具函數(shù),這樣可以學(xué)到很多程序編寫技巧??梢蕴嵘约壕幊坦α?。
3.結(jié)合一些安全規(guī)則,研究這個源代碼是怎樣實現(xiàn)安全方面的設(shè)計的。這樣可以提高自己在安全方面的意識和功力。
4.如果有模板引擎的話,研究一下源代碼的模板引擎。大致從實現(xiàn)方式,效率,易用性等幾個方面去考慮。
5.研究系統(tǒng)的各個功能模塊,這樣既能學(xué)習(xí)編程技巧還能打開自己的編程思路,下次遇到類似的東東就心里有譜了。
6.研究系統(tǒng)所用到設(shè)計模式,一樣的功能實現(xiàn),用到的設(shè)計模式可能相差很多,對比我們之前所作的東東分析設(shè)計模式,是提升我們駕馭代碼的不二法門。
7.研究源代碼對訪問壓力,執(zhí)行效率,系統(tǒng)效率,數(shù)據(jù)庫查詢的優(yōu)化。
方法只是途徑和工具,具體實踐還需要大家的努力。自己的感想是不要著急,認(rèn)真分析,把分析心得用到自己的具體項目上。
--- 版權(quán)最終歸艾銻無限所有http://www.jdsheng.cn/ 如需轉(zhuǎn)載,請標(biāo)明出處。
相關(guān)文章