PHP開(kāi)發(fā)規(guī)范——代碼規(guī)范篇(三):注釋規(guī)范

在代碼中添加合適的注釋來(lái)注解代碼可以代碼的可讀性,可以使得自己和團(tuán)隊(duì)其他成員在之后的代碼的審查和維護(hù)中更加省時(shí)省力。

一、注釋格式說(shuō)明

1.類或文件注釋

  • 類或文件注釋使用 PEAR 推薦的多行注釋方式,不能使用 // 來(lái)注釋:

  • 所有類必須添加說(shuō)明信息,推薦項(xiàng)目包括:創(chuàng)建者信息、創(chuàng)建時(shí)間、更新時(shí)間、更新說(shuō)明、版本號(hào)、程序(文件)描述、項(xiàng)目名稱等,注釋信息可根據(jù)需要添加或減少。

例:

/**
* @access        該標(biāo)記用于指明關(guān)鍵字的存取權(quán)限:private、public或proteced使用范圍:class,function,var,define,module
* @author        指明作者
* @copyright     指明版權(quán)信息
* @const         使用范圍:define 用來(lái)指明php中define的常量
* @final         使用范圍:class,function,var 指明關(guān)鍵字是一個(gè)最終的類、方法、屬性,禁止派生、修改。
* @global        指明在此函數(shù)中引用的全局變量
* @name          為關(guān)鍵字指定一個(gè)別名。
* @package       用于邏輯上將一個(gè)或幾個(gè)關(guān)鍵字分到一組。
* @abstrcut      說(shuō)明當(dāng)前類是一個(gè)抽象類
* @param         指明一個(gè)函數(shù)的參數(shù)
* @return        指明一個(gè)方法或函數(shù)的返回值
* @static        指明關(guān)建字是靜態(tài)的。
* @var           指明變量類型
* @version       指明版本信息
* @todo          指明應(yīng)該改進(jìn)或沒(méi)有實(shí)現(xiàn)的地方
* @link          可以通過(guò)link指到文檔中的任何一個(gè)關(guān)鍵字
* @ingore        用于在文檔中忽略指定的關(guān)鍵字
*/

2.方法函數(shù)注釋

  • 方法函數(shù)外部說(shuō)明使用 PEAR 推薦的多行注釋方式,不能使用 // 來(lái)注釋
  • 方法函數(shù)內(nèi)部代碼注釋時(shí)單行使用 // 注釋,多行使用 /** ... */ 來(lái)注釋

3. 抽象方法注釋

  • 抽象方法說(shuō)明使用 PEAR 推薦的多行注釋方式,不能使用 // 來(lái)注釋
  • 必須說(shuō)明返回值、參數(shù)和實(shí)現(xiàn)功能

4.代碼注釋

  • 使用 // 來(lái)單行注釋代碼片段、業(yè)務(wù)邏輯等
  • 使用 /** ... */ 來(lái)多行注釋代碼片段、業(yè)務(wù)邏輯等

5.特殊注釋

  • // TODO :標(biāo)記待辦的業(yè)務(wù)邏輯

反例:

//我要做的事
if (true) {
    // TODO
}
  • // FIXME :存在錯(cuò)誤,需要修補(bǔ)

反例:

//我要做的事
if (true) {
    //do something
    // FIXME
}

二、其他說(shuō)明

  • 注釋內(nèi)容必須在注釋對(duì)象之前,不能再同一行

反例:

//我要做的事
if (true) {
    //TODO
}
  • 注釋中建議使用中文,不建議使用英文
  • 注釋要與注釋對(duì)象對(duì)齊
  • 后期修改代碼時(shí)要同時(shí)修改注釋
  • 注釋掉的代碼要盡量使用注釋說(shuō)明
  • 注釋最好不要太多,必要之處加以注釋即可,語(yǔ)義清晰之處盡量不要使用注釋,以免本末倒置,增加后期代碼維護(hù)的工作量

由于本人學(xué)藝不精,未盡之處還望海涵,有誤之處請(qǐng)多多指正,歡迎大家批評(píng)指教

本文 完

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 本開(kāi)發(fā)規(guī)范基于《阿里巴巴Java開(kāi)發(fā)手冊(cè)終極版》修改,并集成我們自己的項(xiàng)目開(kāi)發(fā)規(guī)范,整合而成。 為表示對(duì)阿里...
    4ea0af17fd67閱讀 5,751評(píng)論 0 5
  • 如果你是一名碼農(nóng),除了敲代碼之外還要做一些瑣事例如:寫文檔。那么你就應(yīng)該學(xué)會(huì)使用工具自動(dòng)生成,這樣會(huì)大大提高工作效...
    三笑工作室丶閱讀 8,353評(píng)論 1 0
  • JavaScript編碼規(guī)范 1 前言 [2 代碼風(fēng)格] [2.1 文件] [2.2 結(jié)構(gòu)] [2.2.1 縮進(jìn)]...
    憶飛閱讀 1,207評(píng)論 1 2
  • 以下以CentOS6.5為例,安裝php的運(yùn)行環(huán)境,首先打開(kāi)php官網(wǎng)http://php.net/點(diǎn)擊導(dǎo)航欄的D...
    沙卡拉卡s閱讀 643評(píng)論 1 1
  • ?黃昏雨后 ?我拎著我的口袋 ?那有我在晴天拾的 ?許多陽(yáng)光 ?我獨(dú)自一人上路 ?我在路邊 ?把陽(yáng)光切成 ?一塊塊...
    程大泥閱讀 224評(píng)論 3 3

友情鏈接更多精彩內(nèi)容