最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php設(shè)計(jì)模式介紹之編程慣用法

 更新時(shí)間:2008年04月13日 22:07:20   作者:  
《PHP設(shè)計(jì)模式介紹》第一章 編程慣用法 學(xué)習(xí)一門新的語言意味著要采用新的慣用法。這章將介紹或者可能重新強(qiáng)調(diào)一些慣用法。你會(huì)發(fā)現(xiàn)這些慣用法在你要在代碼中實(shí)現(xiàn)設(shè)計(jì)模式時(shí)候是非常有用的。

其他實(shí)踐

下面還有集中其他的實(shí)踐習(xí)慣值得提及到的,也值得加入到你自己的編程習(xí)慣里面的。

UML

統(tǒng)一建模語言(UML)是一種與具體編程語言無關(guān)的用來描述面對(duì)對(duì)象編程觀念的方法。關(guān)于UML的相關(guān)信息資料你可以從http://www.uml.org上找到。

UML涉及到很多方面,但對(duì)PHP程序員來說,其中最相關(guān)的兩方面是類圖和序列圖。

類圖描述了一個(gè)或者更多的類以及他們?cè)谀愕某绦蛑g的相互關(guān)系。(譯者注:最好能夠參考相關(guān)的UML教材,將有助于你的理解。)每個(gè)類都用一個(gè)盒子標(biāo)識(shí),每個(gè)盒子都分成三部分:第一部分是類名,第二步分列舉了類的屬性(變量),最后一部分列舉了類的方法。屬性和方法的可見度被設(shè)計(jì)為:+代表public(公開),—代表private(私有),#代表protected(受保護(hù)的)。

序列圖描述了為一個(gè)特定的任務(wù)或者事件,你對(duì)代碼中的對(duì)象之間的典型的交互活動(dòng)。一個(gè)序列圖主要傳達(dá)這樣的信息:誰,以什么樣的順序,在什么時(shí)候,調(diào)用不同的方法(由名字也可以看出:“序列圖”)。序列圖是對(duì)象集和開發(fā)人員之間交互溝通的非常有用工具。

在我自己的工程里,我使用這兩種典型的類圖來勾畫我們的設(shè)計(jì),但是很少能將他們格式化到項(xiàng)目文檔里面。對(duì)象之間的關(guān)系經(jīng)常隨著你對(duì)系統(tǒng)理解的深化和用戶需求的變化而改變,因此這些圖表很快就會(huì)過時(shí)。這也就是說“一張圖足足值一千個(gè)文字”。這些圖表對(duì)新開發(fā)人員理解系統(tǒng)是非常由幫助的,也能做為使用你軟件的開發(fā)人員的手冊(cè)。

資源控制

“及時(shí)的、經(jīng)常性的保存”是開發(fā)人員另外一個(gè)有用的格言。即使你是這個(gè)項(xiàng)目的唯一的開發(fā)人員,你也應(yīng)該維持所有的資源處于控制下。

網(wǎng)上可以獲取到很多關(guān)于資源控制的解決方法,其中兩個(gè)出色:CVS(http://www.cvshome.org)和Subversion(http://subversion.tigris.org)。CVS是一個(gè)非常流行的用于解決PHP和Apache項(xiàng)目的工具。同時(shí),Subversion也正在迅速的成為流行的二選一工具之一,因?yàn)樗朔薈VS的一些不足之處(特別是在原語命令和刪除/重命名文件夾或文件方面)。然而很少有項(xiàng)目安裝Subversion服務(wù)器。

在工作的時(shí)候,我采用CVS,但這本書的代碼都是使用Subversion來維護(hù)的。

資源代碼文檔

如果你瀏覽完了這本書的所有頁面,你可以會(huì)注意到一些明顯的格式化的注釋塊類似于:

/**
* funny multi-line comments
* @something what is this?
*/

它們被稱為“docblocks”(譯者注:文檔塊),是由程序,比如說phpDocumentor(http://phpdocu.sf.net),為你的PHP項(xiàng)目自動(dòng)生成的應(yīng)用程序接口(API)文檔。

Docblocks(文檔塊)是特定格式的多行注釋,以/**標(biāo)識(shí)開始,接下來的每行都以*為第一個(gè)字符,并以*/標(biāo)識(shí)注釋終止。在每行的前綴前面允許有空格。

@something 代表一個(gè)“標(biāo)簽”(tag),當(dāng)文檔需要轉(zhuǎn)化為解析格式時(shí),標(biāo)簽用來闡明一些必要的信息。比如說標(biāo)簽@private,使用在php4中,常用來標(biāo)識(shí)類的這個(gè)方法或者屬性時(shí)私有的,因?yàn)樵趐hp4中時(shí)沒有提供這種天然的能力的(譯者注:在php4中時(shí)無法說明一個(gè)變量或者方法是否私有的)。

資源代碼文檔比如說docblocks即是一個(gè)有用的參考資料,也是開源項(xiàng)目的一個(gè)好廣告。其中一個(gè)例子(我?guī)兔S護(hù)的)就是SimpleTestAPI文檔(http://simpletest.org)。

相關(guān)文章

  • PHP中的Session對(duì)象如何使用

    PHP中的Session對(duì)象如何使用

    本文詳細(xì)介紹了PHP中的Session對(duì)象,從概念到如何創(chuàng)建,再到一般結(jié)構(gòu)。希望對(duì)你有幫助,一起來看。
    2015-09-09
  • 搭建自己的PHP MVC框架詳解

    搭建自己的PHP MVC框架詳解

    這篇文章主要介紹了搭建自己的PHP MVC框架的方法,詳細(xì)分析了php構(gòu)建MVC框架的具體步驟、相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2017-08-08
  • PHP實(shí)現(xiàn)獲取客戶端IP并獲取IP信息

    PHP實(shí)現(xiàn)獲取客戶端IP并獲取IP信息

    這篇文章主要介紹了PHP實(shí)現(xiàn)獲取客戶端IP并獲取IP信息的方法示例,非常實(shí)用,有需要的小伙伴快來參考下吧。
    2015-03-03
  • php短域名轉(zhuǎn)換為實(shí)際域名函數(shù)

    php短域名轉(zhuǎn)換為實(shí)際域名函數(shù)

    現(xiàn)在很多朋友需要將實(shí)際域名轉(zhuǎn)換為短域名,但也有朋友需要反轉(zhuǎn)查看下實(shí)際域名,那么就可以使用這個(gè)函數(shù)。
    2011-01-01
  • PHP 訪問數(shù)據(jù)庫配置通用方法(json)

    PHP 訪問數(shù)據(jù)庫配置通用方法(json)

    目的是通過通用類訪問配置文件的方式,提供對(duì)數(shù)據(jù)庫連接的動(dòng)態(tài)獲取和設(shè)置,使開發(fā)時(shí)和生產(chǎn)應(yīng)用時(shí)都能夠提供靈活的、簡(jiǎn)化的、解耦的操作方式,需要的朋友可以參考下
    2018-05-05
  • PHP使用PDO訪問oracle數(shù)據(jù)庫的步驟詳解

    PHP使用PDO訪問oracle數(shù)據(jù)庫的步驟詳解

    POD擴(kuò)展是在PHP5中加入,該擴(kuò)展提供PHP內(nèi)置類 PDO來對(duì)數(shù)據(jù)庫進(jìn)行訪問,不同數(shù)據(jù)庫使用相同的方法名,解決數(shù)據(jù)庫連接不統(tǒng)一的問題。下面這篇文章主要給大家介紹了關(guān)于PHP使用PDO訪問oracle數(shù)據(jù)庫的步驟,需要的朋友可以參考下。
    2017-09-09
  • PHP 遠(yuǎn)程文件管理,可以給表格排序,遍歷目錄,時(shí)間排序

    PHP 遠(yuǎn)程文件管理,可以給表格排序,遍歷目錄,時(shí)間排序

    PHP 遠(yuǎn)程文件管理,可以給表格排序,遍歷目錄,時(shí)間排序 點(diǎn)擊表格第一行,頭部就可以排序了,這個(gè)列子是當(dāng)前目錄的
    2009-08-08
  • php中preg_replace_callback函數(shù)簡(jiǎn)單用法示例

    php中preg_replace_callback函數(shù)簡(jiǎn)單用法示例

    這篇文章主要介紹了php中preg_replace_callback函數(shù)簡(jiǎn)單用法,分析了preg_replace_callback函數(shù)的功能及簡(jiǎn)單使用方法,需要的朋友可以參考下
    2016-07-07
  • 修改了一個(gè)很不錯(cuò)的php驗(yàn)證碼(支持中文)

    修改了一個(gè)很不錯(cuò)的php驗(yàn)證碼(支持中文)

    很早前在PHP喜悅國(guó)際村看到的一個(gè)驗(yàn)證碼類,寫的很強(qiáng)。但有些邏輯方面感覺處理的不好,然后我不喜歡完全用session來處理驗(yàn)證碼。這在大型系統(tǒng)中是很不好的
    2007-02-02
  • php繼承中方法重載(覆蓋)的應(yīng)用場(chǎng)合

    php繼承中方法重載(覆蓋)的應(yīng)用場(chǎng)合

    這篇文章主要介紹了php繼承中方法重載(覆蓋)的應(yīng)用場(chǎng)合,以實(shí)例形式較為詳細(xì)的分析了重載的用法與對(duì)應(yīng)的適用情況及使用技巧,需要的朋友可以參考下
    2015-02-02

最新評(píng)論

外汇| 左云县| 淄博市| 汝南县| 九江县| 江达县| 丹巴县| 凤台县| 武功县| 公安县| 岑溪市| 灌云县| 界首市| 郑州市| 尚志市| 睢宁县| 北安市| 昌邑市| 资中县| 赤水市| 台前县| 蕲春县| 静安区| 卢氏县| 洛南县| 曲松县| 将乐县| 连城县| 盘锦市| 岫岩| 南投市| 介休市| 韩城市| 清远市| 新平| 友谊县| 华容县| 松滋市| 苗栗县| 南陵县| 鄂伦春自治旗|