騰訊Alloy團隊代碼規範

概述

我我的很看重代碼規範,由於代碼是寫給別人看的,按規範寫別人才更容易理解。以前苦於沒有代碼規範的資料,如今在github上面看到了騰訊Alloy團隊的代碼規範,因而學習了一下,並記錄下我本身還沒怎麼注意的地方,供之後開發時參考,相信對其餘人也有用。css

順便說下,這裏是騰訊Alloy團隊推薦的sublime3配置html

命名規則

  1. 文件命名所有采用小寫方式, 如下劃線分隔,有複數結構時,要採用負數命名法。

HTML

  1. 屬性名,使用雙引號,不要使用單引號;全小寫,用中劃線作分隔符。
  2. 不要在自動閉合標籤結尾處使用斜線。
  3. doctype大寫。
  4. 在html標籤上加上lang屬性。
  5. 聲明一個明確的字符編碼,一般指定爲'UTF-8'。
  6. 用meta標籤指定頁面應該用什麼版本的IE來渲染(好比content="IE=Edge");
  7. 在引入CSS和JS時不須要指明type。
  8. 屬性應該按照特定的順序出現以保證易讀性,class>id>name>data-*>src等
  9. boolean屬性不須要聲明取值。
  10. 避免用js生成標籤。
  11. 在編寫HTML代碼時,須要儘可能避免多餘的父節點。

css,scss

  1. 屬性聲明順序
  2. 如下幾種狀況須要換行:(1)'{'後和'}'前(2)每一個屬性獨佔一行(3)多個規則的分隔符','後。
  3. 註釋統一用'/* */'(scss中也不要用'//')。
  4. 最外層統一使用雙引號。
  5. 類名使用小寫字母,以中劃線分隔;id採用駝峯式命名;scss中的變量、函數、混合、placeholder採用駝峯式命名。
  6. 顏色16進制用小寫字母;顏色16進制儘可能用簡寫。
  7. 除了margin和padding,都不須要使用屬性簡寫,儘可能分開聲明。
  8. 儘可能將媒體查詢的規則靠近與他們相關的規則,不要放進獨立樣式文件,也不要扔在底部。
  9. @import 引入的文件不須要開頭的'_'和結尾的'.scss'。
  10. 聲明順序:@extend;不包含 @content 的 @include;包含 @content 的 @include;自身屬性;嵌套規則。
  11. 去掉小數點前面的0。
  12. 屬性值'0'後面不要加單位。
  13. 同個屬性不一樣前綴的寫法須要在垂直方向保持對齊,無前綴的標準屬性應該寫在有前綴的屬性後面。
  14. 用 border: 0; 代替 border: none;
  15. 發佈的代碼中不要有 @import。
  16. 儘可能少用'*'選擇器。

JavaScript

  1. return後面須要加分號。
  2. 這些關鍵字後要留一個空格:if, else, for, while, do, switch, case, try, catch, finally, with, return, typeof。
  3. '}'前須要換行。
  4. 單行註釋縮進與下一行代碼保持一致。
  5. 多行註釋最少三行, '*'後跟一個空格。
  6. 最外層統一使用單引號。
  7. 這些字符串一概按這裏的寫法,不小寫或大寫:'ID','URL','Android', 'iOS'。
  8. 構造函數,大寫第一個字母
  9. 常量全大寫,用下劃線鏈接。
  10. 對象屬性名不須要加引號;數組、對象最後不要有逗號。
  11. 永遠不要直接使用undefined進行變量判斷;使用typeof和字符串'undefined'對變量進行判斷。
  12. for-in裏必定要有hasOwnProperty的判斷。
  13. 不要在同個做用域下聲明同名變量。
  14. 不要在一些不須要的地方加括號,例:delete(a.b)。
  15. 數組中不要存在空元素。(有疑問???)
  16. 換行符統一用'LF',即'/n'。
  17. 對上下文this的引用只能使用'_this', 'that', 'self'其中一個來命名。
  18. 一個函數做用域中全部的變量聲明儘可能提到函數首部,用一個var聲明,不容許出現兩個連續的var聲明。好比:
function doSomethingWithItems(items) {
    // use one var
    var value = 10,
        result = value + 10,
        i,
        len;

    for (i = 0, len = items.length; i < len; i++) {
        result += 10;
    }
}
相關文章
相關標籤/搜索