怎樣去閱讀一份php源代碼
更新時(shí)間:2009年08月21日 12:30:35 作者:
技術(shù)的快速進(jìn)步,最好的途徑就是閱讀源代碼了。自己也閱讀了很多開(kāi)源的程序,感覺(jué)方法很重要,好的方法可以達(dá)到事半功倍的效果。一下就是我自己的一些新的,希望對(duì)大家都有用。
一份好的源代碼例如 dz的論壇,wind論壇,帝國(guó)cms,dedecms等,都具有自己的一套設(shè)計(jì)思路和設(shè)計(jì)模式,所以在看某個(gè)產(chǎn)品之前就要做好心理準(zhǔn)備,可以把自己的經(jīng)驗(yàn)和這些產(chǎn)品做對(duì)比,但千萬(wàn)別一直用自己的思維去評(píng)判。一句話就是“以學(xué)習(xí)和批評(píng)的辯證思想去看待”。
好吧!我們就開(kāi)始吧!
那具體的我們?cè)鯓尤ラ喿x一份php的源代碼呢?
一。先把源代碼安裝起來(lái),結(jié)合它的文檔和手冊(cè),熟悉其功能和它的應(yīng)用方式。
二。瀏覽源代碼的目錄結(jié)構(gòu),了解各個(gè)目錄的功能。
三。經(jīng)過(guò)以上兩步后相信你對(duì)這個(gè)開(kāi)源的產(chǎn)品有了一個(gè)初步的了解了,那現(xiàn)在就開(kāi)始分析它的源碼吧。這一步我們開(kāi)始分析源代碼框架。例如入口方式是單入口還是多入口,頁(yè)面之間的調(diào)用規(guī)則,能根據(jù)規(guī)則找出某個(gè)功能用到的頁(yè)面。
四。熟悉源代碼的代碼寫作風(fēng)格,例如縮進(jìn)方式,排版格式等。
五。熟悉一下源代碼用到的數(shù)據(jù)庫(kù)和表,可以參考它的技術(shù)支持文檔。
六。經(jīng)過(guò)以上幾步相信大家已經(jīng)對(duì)這份源代碼有了更深刻的了解,不過(guò)這種了解還只是表面的,下來(lái)我們從6個(gè)方面具體的去分析它吧:
1.入口構(gòu)造以及頁(yè)面調(diào)用方式的具體實(shí)現(xiàn),如果閱讀時(shí)看到工具類和工具函數(shù),盡量去熟悉一下。這一步的分析可以學(xué)習(xí)到源代碼的系統(tǒng)架構(gòu)方式。
2.分析源代碼用到的工具類和工具函數(shù),這樣可以學(xué)到很多程序編寫技巧。可以提升自己編程功力。
3.結(jié)合一些安全規(guī)則,研究這個(gè)源代碼是怎樣實(shí)現(xiàn)安全方面的設(shè)計(jì)的。這樣可以提高自己在安全方面的意識(shí)和功力。
4.如果有模板引擎的話,研究一下源代碼的模板引擎。大致從實(shí)現(xiàn)方式,效率,易用性等幾個(gè)方面去考慮。
5.研究系統(tǒng)的各個(gè)功能模塊,這樣既能學(xué)習(xí)編程技巧還能打開(kāi)自己的編程思路,下次遇到類似的東東就心里有譜了。
6.研究系統(tǒng)所用到設(shè)計(jì)模式,一樣的功能實(shí)現(xiàn),用到的設(shè)計(jì)模式可能相差很多,對(duì)比我們之前所作的東東分析設(shè)計(jì)模式,是提升我們駕馭代碼的不二法門。
7.研究源代碼對(duì)訪問(wèn)壓力,執(zhí)行效率,系統(tǒng)效率,數(shù)據(jù)庫(kù)查詢的優(yōu)化。
方法只是途徑和工具,具體實(shí)踐還需要大家的努力。自己的感想是不要著急,認(rèn)真分析,把分析心得用到自己的具體項(xiàng)目上,呵呵!
好吧!我們就開(kāi)始吧!
那具體的我們?cè)鯓尤ラ喿x一份php的源代碼呢?
一。先把源代碼安裝起來(lái),結(jié)合它的文檔和手冊(cè),熟悉其功能和它的應(yīng)用方式。
二。瀏覽源代碼的目錄結(jié)構(gòu),了解各個(gè)目錄的功能。
三。經(jīng)過(guò)以上兩步后相信你對(duì)這個(gè)開(kāi)源的產(chǎn)品有了一個(gè)初步的了解了,那現(xiàn)在就開(kāi)始分析它的源碼吧。這一步我們開(kāi)始分析源代碼框架。例如入口方式是單入口還是多入口,頁(yè)面之間的調(diào)用規(guī)則,能根據(jù)規(guī)則找出某個(gè)功能用到的頁(yè)面。
四。熟悉源代碼的代碼寫作風(fēng)格,例如縮進(jìn)方式,排版格式等。
五。熟悉一下源代碼用到的數(shù)據(jù)庫(kù)和表,可以參考它的技術(shù)支持文檔。
六。經(jīng)過(guò)以上幾步相信大家已經(jīng)對(duì)這份源代碼有了更深刻的了解,不過(guò)這種了解還只是表面的,下來(lái)我們從6個(gè)方面具體的去分析它吧:
1.入口構(gòu)造以及頁(yè)面調(diào)用方式的具體實(shí)現(xiàn),如果閱讀時(shí)看到工具類和工具函數(shù),盡量去熟悉一下。這一步的分析可以學(xué)習(xí)到源代碼的系統(tǒng)架構(gòu)方式。
2.分析源代碼用到的工具類和工具函數(shù),這樣可以學(xué)到很多程序編寫技巧。可以提升自己編程功力。
3.結(jié)合一些安全規(guī)則,研究這個(gè)源代碼是怎樣實(shí)現(xiàn)安全方面的設(shè)計(jì)的。這樣可以提高自己在安全方面的意識(shí)和功力。
4.如果有模板引擎的話,研究一下源代碼的模板引擎。大致從實(shí)現(xiàn)方式,效率,易用性等幾個(gè)方面去考慮。
5.研究系統(tǒng)的各個(gè)功能模塊,這樣既能學(xué)習(xí)編程技巧還能打開(kāi)自己的編程思路,下次遇到類似的東東就心里有譜了。
6.研究系統(tǒng)所用到設(shè)計(jì)模式,一樣的功能實(shí)現(xiàn),用到的設(shè)計(jì)模式可能相差很多,對(duì)比我們之前所作的東東分析設(shè)計(jì)模式,是提升我們駕馭代碼的不二法門。
7.研究源代碼對(duì)訪問(wèn)壓力,執(zhí)行效率,系統(tǒng)效率,數(shù)據(jù)庫(kù)查詢的優(yōu)化。
方法只是途徑和工具,具體實(shí)踐還需要大家的努力。自己的感想是不要著急,認(rèn)真分析,把分析心得用到自己的具體項(xiàng)目上,呵呵!
相關(guān)文章
dedecms 制作模板中使用的全局標(biāo)記圖文教程
dedecms 制作模板中使用的全局標(biāo)記圖文教程...2007-03-03PHP發(fā)明人談MVC和網(wǎng)站設(shè)計(jì)架構(gòu) 貌似他不支持php用mvc
PHP是全世界上使用率最高的網(wǎng)頁(yè)開(kāi)發(fā)語(yǔ)言,臺(tái)灣每4個(gè)網(wǎng)站,就有1個(gè)用PHP語(yǔ)言開(kāi)發(fā)。1995年發(fā)明PHP語(yǔ)言的Rasmus Lerdorf,也是打造出Yahoo全球服務(wù)網(wǎng)站的架構(gòu)師之一,他首度來(lái)臺(tái)分享如何架構(gòu)網(wǎng)站擴(kuò)充性丶安全性和效能的秘訣。2011-06-06