1. 程式人生 > >The Elements of Programming Style(程式設計風格)

The Elements of Programming Style(程式設計風格)

下文的程式設計風格規則摘錄於由McGraw Hill出版的,由Kernighan和 Plauger合著的《程式設計風格要素》一書。有Strunk和White的一引言:《程式設計風格要素》中的規則就像英語規則一樣,就算是大牛也有時候也會犯錯。然而,當這些規則被打破時,經常會為之付出代價。除非你確定這樣做能夠保證很好,當然,根據以下規則去寫程式你可能會做的更好。

 

1.      將程式碼寫清楚 ---- 不要寫得太“高深”讓人難懂。

2.      簡單而直接的表述您的意思。

3.      儘量使用庫函式,不要重造輪子。

4.      避免使用過多的臨時變數。

5.      將程式碼寫清晰– 不要犧牲程式碼的清晰易懂去換取高效率。

6.      讓機器來做又髒又累的工作。

7.      通過呼叫函式來避免在多處重寫一樣的程式碼。

8.      用括號去避免歧義。

9.      選擇能代表變數含義的命名。

10.  避免不必要的分支。

11.  如果一個邏輯表示式很難被理解,那就換個方式表達它。

12.  設計一種資料結構來使程式變得簡單。

13.  先用易於理解的偽碼來闡述程式思想;然後再用你使用的計算機語言將它翻譯程式程式碼。

14.  模組化。使用過程化思想和函式。

15.  如果你能夠確保程式的可讀性,不用goto語句。

16.  要修補很亂的程式碼 ---- 重寫吧。

17.  編寫並測試較小的程式碼,然後再用它們組成較大的程式。

18.  對具有遞迴性質的資料結構編寫遞迴程式碼。

19.  測試輸入驗證程式。

20.  確定輸入沒有違反程式的允許的範圍。

21.  用檔案結束識別符號結束輸入,不要用計數的方式。

22.  識別壞輸入,如有可能恢復這些輸入。

23.  要讓輸入變得簡單,輸出自明。

24.  用統一的輸入格式。

25.  要讓輸入比較容易被校對。

26.  自定義識別輸入。允許預設。對於輸出兩者皆可。

27.  確保變數在使用前得到初始化。

28.  不要一直停留在某個bug處。

29.  用消除bug的編譯器。

30.  當心off-by-one錯誤。

31.  小心平等的分支對。

32.  小心迴圈從相同的中間和底下位置推出的情況。

33.  確保程式碼的有雅。

34.  測試臨界區上的變數。

35.  某些錯誤可能需要手工查詢。

36.  0.1的十倍就是1。

37.  7/8的值為0,但7.0/8.0的值非0。

38.  不要對單獨的浮點數用相等來比較。

39.  在讓程式碼時間效率更高時確保程式碼的正確性。

40.  在讓程式碼執行時間變少時確保程式碼能夠處理異常情況。

41.  在讓程式碼執行時間變少時確保程式碼的清晰性。

42.  不要犧牲程式碼的清晰去換取少量的效率。

43.  只讓編譯器做少量的優化工作。

44.  不要負擔重寫程式碼,重新組織這些會重複寫的程式碼。

45.  確保特殊的情況確實是特殊的。

46.  儘量用簡單的方法來換取高效率。

47.  一般不用程式碼優化的方式去換取時間上的效率 ---- 用一個更好的演算法來代替程式碼優化。

48.  評估你的程式。確定更改程式能夠帶來更高的效率。

49.  確保註釋和程式程式碼的一致性。

50.  不要重複程式碼的註釋 --- 確保每個註釋都有用。

51.  不要註釋很糟糕的程式碼 ---- 重新它。

52.  讓變數名能夠代表它的用途。

53.  用標籤語句來表明程式碼段的用途。

54.  闡述一下程式,讓讀者更好的理解它。

55.  為你的變數佈局寫好文件。

56.  不要過度註釋。