學(xué)習(xí)php開(kāi)源項(xiàng)目的源碼指南
一。先把源代碼安裝起來(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è)面。
四。熟悉源代碼的代碼寫(xiě)作風(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é)到很多程序編寫(xiě)技巧??梢蕴嵘约壕幊坦αΑ?
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)化。
以上是個(gè)人的一些經(jīng)驗(yàn)總結(jié),這里拋磚引玉一下,大家有什么更好的方法,還請(qǐng)告之一下。
- Android開(kāi)源項(xiàng)目PullToRefresh下拉刷新功能詳解
- Android 開(kāi)源項(xiàng)目側(cè)邊欄菜單(SlidingMenu)使用詳解
- 使用PHP把HTML生成PDF文件的幾個(gè)開(kāi)源項(xiàng)目介紹
- Ruby微信開(kāi)發(fā)的幾個(gè)開(kāi)源項(xiàng)目介紹
- 發(fā)布一個(gè)基于TokyoTyrant的C#客戶端開(kāi)源項(xiàng)目
- 利用AJAX開(kāi)源項(xiàng)目 在網(wǎng)頁(yè)里播放視頻實(shí)現(xiàn)方法
- web2.0的幾個(gè)開(kāi)源項(xiàng)目
- 如何正確使用開(kāi)源項(xiàng)目?
相關(guān)文章
學(xué)習(xí)php設(shè)計(jì)模式 php實(shí)現(xiàn)單例模式(singleton)
這篇文章主要介紹了php設(shè)計(jì)模式中的單例模式,使用php實(shí)現(xiàn)單例模式,感興趣的小伙伴們可以參考一下2015-12-12php5對(duì)象復(fù)制、clone、淺復(fù)制與深復(fù)制實(shí)例詳解
這篇文章主要介紹了php5對(duì)象復(fù)制、clone、淺復(fù)制與深復(fù)制,結(jié)合實(shí)例形式詳細(xì)分析了php5對(duì)象復(fù)制、clone、淺復(fù)制與深復(fù)制相關(guān)概念、原理、使用技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-08-08PHP操作MySQL的mysql_fetch_* 函數(shù)的常見(jiàn)用法教程
這篇文章主要介紹了PHP中操作MySQL的mysql_fetch函數(shù)的常見(jiàn)用法教程,文中提到了其下fetch_array和mysql_fetch_row以及mysql_fetch_object函數(shù)的使用,需要的朋友可以參考下2015-12-12MySQL 日期時(shí)間函數(shù)常用總結(jié)
MySQL 日期時(shí)間函數(shù)常用總結(jié),需要的朋友可以參考下2012-06-06php鏈?zhǔn)讲僮鞯膶?shí)現(xiàn)方式分析
這篇文章主要介紹了php鏈?zhǔn)讲僮鞯膶?shí)現(xiàn)方式,結(jié)合實(shí)例形式對(duì)比分析了常規(guī)調(diào)用與鏈?zhǔn)秸{(diào)用操作的相關(guān)實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-08-08