IBM的CODING規約 做JAVA有必要看看

2021-04-16 19:23:12 字數 1683 閱讀 7813

這只是我現在這個專案的,但別的都大同小異.(日文的可以不遵守)

0 使用過rad的code formatter.      

0 使用過rad的import編成機制。      

0 bean class使用macro生成的.      

0 在類定義前有概要和update history的注釋.

0 在類成員變數定義前面有概要的注釋。  

0 在建構函式前面有引數注釋。      

0 方法定義前有概要和引數注釋      

1 沒有僅靠大寫和小寫來區別的名字。  

2 沒有數字或者字母只差1位的名字   

3 沒有沒有意義的字母組成的名字。   

4 package名全部用小寫字母。        

5 package名用有意義的名字來命名。                        

6 類名用能夠表示它的作用的來命名。                     

7 類名的開頭字母用大寫。                        

8 例外クラス名には、名前の最後に『exception』が付加されているか。                        

9 テストクラスの名前は『テスト対象クラス名 + test』となっているか。

10 方法名用小寫開頭。                        

11 方法的名字可以表示它的機能(詳細命名規約p4-5參照)

12 方法的引數名和例項變數名不同。   

13 定數全部是static final,而且是全大寫,並且,用"_"來區分。

14 變數名能夠反映這個變數的作用。   

15 for語句的count變數,nest用"i,j,k"來計數。

16 1個類不能超過500行。         

17 1行のバイト數が100バイトを超えていなか。

18 インデントは半形空白文字4文字であるか。

19 package,import和comment的記述位置符合規定。(詳細coding規約 p4)

20 區域性變數用/**  */、注釋和/**,*/之間有半形空白。

21 區域性變數的注釋用//開始,並且和//有半形文字。

22 類定義前有符合規範的注釋。      

23 方法定義前有符合規範的注釋.      

24 方法內部的注釋要簡潔明瞭。      

25 【 )沒有被省略。

50 if/while的條件沒有使用"="。      

51 for迴圈中的count定義和increment不能省略。

52 數值增減,用for迴圈。         

53 沒有增減,就不用while迴圈。      

54 不使用break/continue。        

55 迴圈處理中盡量不申明變數。      

56 string比較用equals()方法。      

57 不能用new來生成字串。        

58 string的連線要使用stringbuffer.  

59 string和字串比較的時候要考慮string物件是null的情況。

使用字串.equals(string物件)。  

60 用bigdecimal來確保沒有計算誤差。  

61 沒有從高精度向低精度數值型強制轉化。

規約的力量

fastdfs 乙個相當輕的檔案系統,通過組的方式來控制複製 組內全量 另外在一定時間內的檔案的訪問只在組中的源服務中,這樣來避開檔案尚未同步到其他組成員的尷尬。組名 磁碟 目錄 檔名,storage server 可以根據檔案 id直接定位到檔案。例如 group2 m00 00 00 cgrgq...

克制Coding的衝動

人的生命只有一次,可悲的是它不能重新再來,可喜的是它也不需要重新再來。馮導的這句話對生命的描述挺有道理。其實這句話也概括了軟體開發的目的。大部分的軟體開發者都有這麼一種衝動,包括我自己在內,解決乙個問題,就有用 來表示的衝動,coding,然後拿出結果,讓人心服口服,牛人乙個。然而這樣真的好嗎?只有...

coding的共通原則

或許要買本 大全看看了。不過我自己總結的話,coding就像寫文章,不管用英語,法語,日語,還是中文。其都有一些共通的實踐原則。比如,列好提綱,總分總結構等等。在通常的專案中,我們選擇一門程式語言來使用,並不一定要把該語言的語法,特性全部搞懂。只要能很好地表達我我們的意圖,讓計算機和人,都能很好的理...