php 开发规范
說(shuō)明:這個(gè)規(guī)范應(yīng)該是基本的規(guī)范了吧。大部分程序員都知道這樣的規(guī)范,從規(guī)范上看應(yīng)該是使用ZendFramework開(kāi)發(fā)的。
參考一下:
開(kāi)發(fā)原則
1.業(yè)務(wù)邏輯統(tǒng)一寫在數(shù)據(jù)庫(kù)的存儲(chǔ)過(guò)程里,數(shù)據(jù)查詢和組合在程序中完成2.存儲(chǔ)過(guò)程統(tǒng)一用專用程序修改,禁止直接在客戶端修改
3.存儲(chǔ)過(guò)程頭部必須撰寫該操作的業(yè)務(wù)流程描述
4.數(shù)據(jù)庫(kù)對(duì)于帶小數(shù)點(diǎn)數(shù)字統(tǒng)一使用 DECIMAL 類型,禁止使用 FLOAT 類型
5.數(shù)據(jù)庫(kù)主鍵統(tǒng)一使用 BIGINT(20) UNSIGNED AUTO INCREMENT
6.所有 CSS/JavaScript 均按各自功能寫在獨(dú)立的文件上
7.所有 JavaScript 均使用 jQuery App 插件形式撰寫
8.視圖上只使用頁(yè)面控件輸出數(shù)據(jù)
9.控制器只負(fù)責(zé)獲取數(shù)據(jù)、設(shè)置頁(yè)面控件或調(diào)用模型操作
10.控制器每個(gè)業(yè)務(wù)操作動(dòng)作只允許調(diào)用一個(gè)模型的一個(gè)方法
11.模型不一定操作數(shù)據(jù)庫(kù),但自身必須定義或保存數(shù)據(jù),否則應(yīng)為助手
12.助手可以為純靜態(tài)類或可實(shí)例化的對(duì)象
13.使用 PHPDoc 標(biāo)準(zhǔn)注釋每個(gè)對(duì)象、方法、函數(shù)和變量相關(guān)基本信息
14.關(guān)鍵處理或邏輯必須詳細(xì)說(shuō)明
15.助手名稱必須以 Helper 結(jié)尾
16.模型名稱不需要加上 Model
17.統(tǒng)一使用 Igou::modx() 代替 global $modx
18.統(tǒng)一使用 Zend_Db_Select 組裝 SQL 語(yǔ)句
數(shù)據(jù)庫(kù)命名規(guī)范
1.數(shù)據(jù)表主鍵統(tǒng)一使用 id 作為字段名2.數(shù)據(jù)庫(kù)字段名稱單詞之間使用 _ 分割,禁止兩個(gè)單詞連寫
3.所有愛(ài)購(gòu)網(wǎng)自建數(shù)據(jù)表加上 igou_ 前綴,方便與 modx 區(qū)分
4.數(shù)據(jù)表統(tǒng)一使用單數(shù)形式
代碼編寫標(biāo)準(zhǔn)
1.變量、方法和函數(shù)統(tǒng)一使用駝峰式大小寫,首字母小寫2.對(duì)象名稱使用下橫線分隔單詞,單詞首字母大寫
3.常量統(tǒng)一使用單數(shù)形式
4.自定義常量統(tǒng)一加上 IGOU_ 前綴
5.純 PHP 文件結(jié)尾不寫 ?>
6.源代碼文件行尾不留空格(包括空行)
7.非公開(kāi)方法或?qū)傩?#xff08;變量)名字加 _ 前綴
注意事項(xiàng)
1.外接代碼片段使用 [!片段名!] 調(diào)用,并非 [[片段名]]2.外接代碼片段可使用 [!控制器::動(dòng)作!] 形式調(diào)用 若無(wú)指定控制器則調(diào)用 Index 控制器的方法
3.代碼片段對(duì)應(yīng) Action 返回內(nèi)容時(shí)使用 $this->_response->setBody('內(nèi)容');
4.所有外接代碼片段的調(diào)用工作由 Plugins 的 SnippetsController 執(zhí)行
5.全局公用的 View Helper 放在 library/Igou/View/Helper 下
總結(jié)
- 上一篇: FreeBSD基本命令[转]
- 下一篇: CSS 日常收集