## 總體原則
1. **As short as possible(如無必要,勿增注釋)**。盡量提高代碼本身的清晰性、可讀性。
1. **As long as necessary(如有必要,盡量詳盡)**。合理的注釋、空行排版等,可以讓代碼更易閱讀、更具美感。
總之,注釋的目的是:**提高代碼的可讀性,從而提高代碼的可維護性。**
## 哪些需要注釋
1. 某段代碼的寫法,需要注釋說明原因時:
```js
// Using loop is more efficient than `rest = slice.call(arguments, 1)`.
for (i = 1, len = arguments.length; i < len; i++) {
rest[i - 1] = arguments[i];
}
```
2. 添加上注釋,能讓代碼結構更清晰時:
```js
init: function(selector, context, rootjQuery) {
var match, elem, ret, doc;
// Handle $(""), $(null), or $(undefined)
if ( !selector ) {
...
}
// Handle $(DOMElement)
if ( selector.nodeType ) {
...
}
// The body element only exists once, optimize finding it
if ( typeof selector === "string" ) {
...
}
}
```
3. 有借鑒第三方代碼,需要說明時:
```js
// Inspired by https://github.com/jquery/jquery/blob/master/src/core.js
function ready() {
...
}
```
4. 當有值的判斷或者選擇,有不同的分支時:
```js
// It need to do when the value of a is one or two.
if(a === 1 || a === 2) {
...
}
```
## 起始約定
每個源碼文件的開頭,保留為空:
```js
define('lego',[],function() {
// 源代碼
});
```
注意點:
1. 文件頭不注明Author信息,通過README來提供author & contributors。(組件規則,業務代碼需要注明方便查看)
## 注釋書寫規范
1. 源碼中的注釋,推薦用英文。
2. 含有中文時,標點符號用中文全角。
3. 中英文夾雜時,英文與中文之間要用一個空格分開。
4. 注釋標識符與注釋內容要用一個空格分開:`// 注釋` 與 `/* 注釋 */`。
5. 單行注釋用`// 注釋` 與多行注視用 `/* 注釋 */`區分開來,能夠一行注視明白的不寫過多注視
## JSDoc 注釋
- 不推薦 JSDoc 式注釋,推薦 Backbone 風格的注釋。
- API 請通過 README 等文檔表達清楚。
- 不寫 JSDoc 類文檔,可以讓開發者在寫代碼時更專注于寫代碼,在寫文檔時則更專注于寫文檔。**讓工作解耦,更專注。**
- 概要
- 技術介紹
- 框架與環境
- vue開發
- 開發規范
- 前端開發規范
- 總體原則
- HTML規范
- HTML&css規范
- vue編碼規范
- Javascript規范
- 后端開發規范
- cap4
- 自定義控件
- 前端2.0(PC+移動)
- PC前端
- 后端
- 移動端
- 移動端接口
- 低版本協同升級到V5 8.0適配說明
- 自定義按鈕
- 自定義按鈕(無流程)
- 自定義控件(列表插槽)
- 自定義按鈕(篩選條件)
- 低版本協同升級到V5 8.0適配說明
- 門戶空間
- 門戶與欄目掛載
- 欄目開發及流程說明
- 頁面模板
- 客開通路及插件體系
- 表單設計器擴展配置
- 使用步驟
- 配置說明
- 事件API
- Demo示例
- 運行態客開通路
- 插件使用步驟
- 插件接口
- 事件接口
- 鉤子相關接口
- 表單操作接口
- Demo示例
- 插件機制
- 表單運行態接口(舊)
- 白名單插件
- 版本記錄
- vue組件庫
- 開發指南
- 開發文檔規范
- 業務組件介紹
- 業務組件
- table組件
- 分頁組件
- title組件
- 統計排隊組件
- code組件
- 條件篩選
- 批量導入
- 上傳Excel
- 批量更新
- 批量刷新
- UI組件
- 按鈕組件
- 復選組件
- 取色器組件
- 示例組件
- 水平選擇組件
- 選圖標組件
- 提示組件
- 單選組件
- 搜索組件
- 選擇組件
- 穿梭框組件
- 標簽組件
- 文本組件
- 樹組件
- 驗證組件
- 菜單組件
- iframe組件
- toolbar
- 統計組件
- 餅圖
- 柱狀圖
- 圖標
- 業務關系開發指南
- 自定義觸發
- 自定義關聯
- 后端API
- 更新表單數據緩存
- 發起表單流程
- 取得指定表單PDF或截圖
- 無流程批量添加
- 無流程批量刪除
- 無流程批量更新
- 無流程批量導出
- 客開培訓文檔
- Vue基礎培訓
- Vue實戰培訓
- Vue進階培訓
- VueCLI3培訓
- cap3
- 自定義控件
- 后端
- 移動端
- 前端編譯
- 表單運行態接口
- 協同云