## 1.目錄規范
* Addons 插件目錄(每個子目錄代表一個插件)
* Application 應用模塊目錄
* * Admin 后臺模塊
* * Common 公共模塊,不能通過URL訪問
* * Home 前臺模塊
* * User 用戶中心客戶端,不能通過URL訪問
* Public 公共資源目錄
* Uploads 公共上傳根目錄
## 2.編碼規范
功能沒有完成的時候一定要寫 (TODO:)
方法和函數有注釋,注釋內容包括功用,參數,返回值,作者,必要是還有示例
邏輯復雜的代碼,關鍵部分應有注釋
### 2.1 PHP編碼規范
類文件命名 - 同ThinkPHP命名規范
公共控制器的名稱應該和模塊名稱相同
默認控制器層 Controller
方法命名規范 - 駝峰命名,不能出現下劃線
類屬性規范 - 類屬性和類方法一致,統一使用駝峰
函數命名 - 小寫字母加下劃線
變量命名規范 - 產品中不涉及到全局變量,局部變量不做強制要求,建議使用下劃線
后臺控制器里給列表賦值的變量都用list, 單一數據讀取、保存都用data,其他臨時變量 最好不要使用這兩個,以免造成沖突
### 2.2 前端編碼規范
#### 2.2.1 模板文件相關常量
__PUBLIC__ 公共資源文件目錄
__STATIC__ 公共靜態文件目錄
__ADDONS__ 當前模塊插件在STATIC/插件名同名資源目錄
__IMG__ 當前模塊圖片目錄
__CSS__ 當前模塊CSS目錄
__JS__ 當前模塊JS目錄
#### 2.2.2 模板文件規范
所有的模板文件都繼承 Public/base文件,base模板提供了以下可重載的塊
style 用于添加頁面樣式文件
script 用于添加頁面JS文件和JS代碼
sidebar 左邊導航區域
body 頁面內容,后臺頁面的內容全部放到body塊中
## 3 數據庫規范
所有的字段必須添加注釋
字段名小寫,多關鍵字使用下劃線分割(關鍵字盡量全稱)
所有字段不允許 NULL值
字段長度定義(TODO: 具體常用的長度定義)
數據表引擎 MyISAM
所有的表應該都有status 字段來標注數據狀態,業務狀態請使用其他字段;status字段類型 為帶符號的 tinyint
-1 已刪除
0 被禁用
1 正常
2 未審核
如果還需要其他的數據狀態 請先判斷該狀態的數據是有用的數據還是無意義的數據
有用的數據狀態 > 2
無意義的數據狀態 < -1
所有的刪除(除開清空回收站操作) 請 標記status 為 -1
## 4 文檔規范
功能模塊文檔
文件注釋
方法注釋
函數注釋
代碼塊注釋
注釋必須有 @author 項,方便在遇到問題時候找到作者調整。
- 準備
- 概覽
- 獲取
- 安裝
- 后臺管理
- 首頁
- 內容
- 系統
- 網站設置
- 配置管理
- 菜單管理
- 分類管理
- 模型管理
- 導航管理
- 數據備份
- 擴展
- 用戶
- 用戶信息
- 用戶行為
- 行為日志
- 權限管理
- 應用
- 架構設置
- 應用架構及目錄結構
- 獨立模型
- 插件設計
- 用戶行為設計
- 權限設計
- 文檔模型設計
- 分類設計
- 二次開發
- 命名規范與編碼規范
- 數據字典
- 公共函數和庫函數使用規范
- 模板開發指南
- 權限管理指南
- 插件開發指南
- 什么是插件?
- 什么是鉤子?
- 插件的開發流程
- 插件后臺的開發
- 插件開發注意事項
- 模型擴展開發指南
- 獨立模型擴展
- 文檔模型擴展
- 附錄
- 配置參考
- 函數庫參考
- Common函數庫
- admin函數庫
- Home函數庫
- 類庫參考