代碼風格

代碼風格前端

前端代碼風格(Java部分,參考《Java編程風格》一書)python

1、格式規範:編程

  1.縮進嵌套的代碼:在每一個代碼塊和嵌套中加入縮進,縮進代碼,增強可讀性,包括(類定義,內部類定義,方法定義,靜態塊,for循環語句,if-else語句,trycatchfinally塊,匿名內部類,while語句,do-while語句)後端

  2.斷開很長的句子:第一,若是包含了逗號,那麼在每個逗號後面都另起一行,把逗號後面的每個表達式都和逗號前面的表達式的第一個字母對齊。第二,應該在優先級最低的運算符以前斷行。函數

  3.使用空白:關鍵字和左括號之間,右括號和緊隨其後的關鍵字,除了"."以外的運算符與其先後的表達式之間用空格隔開。每一個邏輯上獨立的方法和代碼段之間,定義類或者接口的成員之間,每一個類和接口之間應該加入空白行。優化

2、命名約定:this

  1.名稱應該具備實際意義編碼

  2.使用人們熟悉的名稱spa

  3.採用駝峯法對象

3、包命名:

  1.用你所在組織的域名的倒序小寫形式做爲包的根限定詞

  2.使用單獨的小寫詞做爲每一個包的根名

4、類型命名:

  1.類和接口名中的每一個單詞的第一個字母大寫

5、類命名:

  1.用名詞命名類

6、接口命名:

  1.用名詞或者形容詞命名接口

7、方法命名:

  1.方法名中的第一個單詞小寫,其後每一個單詞的第一個字母大寫

  2.用動詞命名方法

  3.遵循JavaBean中命名屬性訪問函數方法:setgetis

8、變量命名:

  1.變量命中的第一個單詞小寫,其後的每一個單詞的第一個字母大寫

  2.用名詞命名變量

9、字段命名:

  1.使用this字段變量能夠區分開局部變量

10、參數命名:

  1.構造函數或者"set"方法給字段分配參數賦值,參數名應該和字段名相同

11、常量命名:

  1.常量的每一個單詞均大寫,單詞之間使用下劃線鏈接

12、文檔約定:

   1.爲使用和維護代碼的人編寫文檔

  2.註釋和代碼要同步

十3、語句和表達式:

  1.用等價的方法替換重複的、複雜的表達式

  2.使用塊語句代替控制流結構的表達式

  3.使用括號明確操做順序

  4.switch語句中的最後一個case體使用break語句

  5.使用equals(),而不是==來檢測對象的對等關係

十4、效率:

  1.使用懶惰初始化

  2.避免建立沒必要要的對象

  3.把優化工做留在往後


後端代碼風格(python部分,參考PEP8標準):

1、命名風格

  1.整體原則,新編代碼必須按下面命名風格進行,現有庫的編碼儘可能保持風格。

  2.儘可能以避免單獨使用容易混淆的字母。

  3.模塊命名儘可能短小,使用所有小寫的方式,可使用下劃線。

  4.包命名儘可能短小,使用所有小寫的方式,不可使用下劃線。

  5.類的命名使用CapWords的方式,模塊內部使用的類採用_CapWords的方式。

  6.異常命名使用CapWords+Error後綴的方式。

  7.全局變量儘可能只在模塊內有效,相似C語言中的static。實現方法有兩種,一是__all__機制;二是前綴一個下劃線。對於不會發生改變的全局變量,使用大寫加下劃線。

  8.函數命名使用所有小寫的方式,可使用下劃線。

  9.常量命名使用所有大寫的方式,可使用下劃線。

  10.用複數形式命名序列。

  11.用顯式名稱命名字典。

  12.避免通用名稱。諸如 list, dict, sequence 或者 element 這樣的名稱應該避免。又如os, sys 這種系統已經存在的名稱應該避免。

  13.類的屬性(方法和變量)命名使用所有小寫的方式,可使用下劃線。

2、代碼編排

  1.縮進。優先使用4個空格的縮進,其次可以使用Tap,但堅定不能混合使用Tap和空格。

  2.每行最大長度79,換行可使用反斜槓,最好使用圓括號。換行點要在操做符的後邊敲回車。 

3、文檔編排

  1.模塊內容的順序:模塊說明和docstring—import—globals&constants—其餘定義。其中import部分,又按標準、三方和本身編寫順序依次排放,之間空一行。

  2.不要在一句import中多個庫。

4、空格的使用

  1.整體原則,避免沒必要要的空格。

  2.各類右括號前不要加空格。

  3.逗號、冒號、分號前不要加空格。

  4.操做符左右各加一個空格。

  5.不要將多句語句寫在同一行。

  6.if/for/while語句中,即便執行語句只有一句,也必須另起一行。

5、編碼建議

  1.編碼中考慮到其餘python實現的效率等問題.

  2.儘量使用‘is’‘is not

  3.使用isinstance()比較對象的類型。

  4.判斷序列空或不空,建議使用if [not] seq

  5.字符串不要以空格收尾。

6.二進制數據判斷使用 if boolvalue的方式。

相關文章
相關標籤/搜索