# 前端開發規范
> 盡量使用lyui/Framework7/weui等框架自帶的組建、樣式進行頁面的構建。然后局部有特殊樣式細節改動再自己處理。
**css書寫**
不要直接對html標記直接進行樣式定義,而應該使用css類名進行局部樣式定義(最好能形成復用的代碼),除非是一些確實特殊的可以在最主要的css文件里統一定義,比如home.css、main.css。
推薦的做法:
.article .title {
margin-bottom: 15px;
}
.article ul {
list-style: none;
}
不推薦的做法:
h3 {
margin-bottom: 15px;
}
ul {
list-style: none;
}
**縮進空行**
統一遵循四格空格縮進、文件末尾保留一行空行、代碼中間不需要多余的空格和空行刪掉。
**css類名**
css類名的定義一定程度上要能表達出意思,比如post-list可以表示是一個帖子列表,如果寫成info就是在迷惑敵人。
**變量名**
css類名結構統一類似media-avatar-list,js的變量名統一類似article_info
# 后端開發規范
**模板賦值**
列表數組:
`$this->assign('data_list',$data_list);`
`$this->assign('cate_list',$cate_list);`
`$this->assign('goods_list',$goods_list);`
**詳情數組:**
`$this->assign('info',$info);`
**編碼規范**
1)功能沒有完成的時候一定要寫 (TODO:)
2)必須含有功能模塊文檔、文件注釋、方法注釋、函數注釋、代碼塊注釋,注釋內容包括功用,參數,返回值,作者,必要是還有示例。邏輯復雜的代碼,關鍵部分應有注釋。
3、PHP編碼規范
類文件命名:同ThinkPHP命名規范
方法命名規范:駝峰命名,不能出現下劃線
類屬性規范:類屬性和類方法一致,統一使用駝峰
函數命名;小寫字母加下劃線
變量命名規范:產品中不涉及到全局變量,局部變量不做強制要求,建議使用下劃線
后臺控制器里給列表賦值的變量都用xx_list, 單一數據讀取、保存都用info,其他臨時變量 最好不要使用這兩個,以免造成沖突。
**模板**
1)模板文件相關常量
~~~
__PUBLIC__ 公共資源文件目錄
__IMG__ 當前模塊圖片目錄
__CSS__ 當前模塊CSS目錄
__JS__ 當前模塊JS目錄
~~~
2)模板文件規范
所有的模板文件都繼承 Public/layout文件,layout模板提供了以下可重載的塊。
> style 用于添加頁面樣式文件
> script 用于添加頁面JS文件和JS代碼
> sidebar 左邊導航區域
> body 頁面內容,后臺頁面的內容全部放到body塊中
**數據庫規范**
1)所有的字段必須添加注釋
2)字段名小寫,多關鍵字使用下劃線分割(關鍵字盡量全稱)
3)所有字段不允許 NULL值
4)字段長度定義(TODO: 具體常用的長度定義)
5)數據表引擎 MyISAM
6)所有的表應該都有status 字段來標注數據狀態,業務狀態請使用其他字段;
status字段類型 為帶符號的 tinyint(4)
> -1 已刪除;0 被禁用;1 正常
如果還需要其他的數據狀態,請先判斷該狀態的數據是有用的數據還是無意義的數據:有用的數據狀態 > 2,無意義的數據狀態 < -1。
- 序言
- 基礎
- 安裝
- 開發規范
- 目錄結構
- 表單生成器
- setMetaTitle
- setTabNav
- setExtraItems
- setPostUrl
- addFormItem
- setFormData
- setExtraHtml
- setAjaxSubmit
- setTemplate
- 表格生成器
- setMetaTitle
- addTopButton
- addTableColumn
- setTableDataList
- setTableDataListKey
- addRightButton
- setTableDataPage
- setSearch
- setTabNav
- addSearchItem
- alterTableData
- setExtraHtml
- setTemplate
- 公共函數
- 后臺管理
- 系統功能
- 系統設置
- 導航管理
- 幻燈管理
- 配置管理
- 上傳管理
- 用戶權限
- 用戶管理
- 管理員管理
- 用戶組管理
- 擴展中心
- 功能模塊
- 插件管理
- 模塊
- opencmf.php
- 目錄結構
- 開發規范
- 插件
- 系統鉤子列表
- 插件開發
- 主題
- 新建主題
- 模板變量
- 模板標簽
- 附錄
- 網站配置
- 常見問題
- 更新日志
- 關于零云