《C++編程規范》筆記(設計風格)
關鍵字:第1條:一個實體應該只有一個緊湊的職責 單一職責原則。這個原則并不那么容易執行,即使是STL這樣的程序庫,也一樣會犯違反該原則的錯誤。在這里,舉了兩個違反這一原則的著名實現:realloc和stl 中的basic_string。不過,對于basic_string,我想比起
關鍵字:第1條:一個實體應該只有一個緊湊的職責
單一職責原則。這個原則并不那么容易執行,即使是STL這樣的程序庫,也一樣會犯違反該原則的錯誤。在這里,舉了兩個違反這一原則的著名實現:realloc和stl 中的basic_string。不過,對于basic_string,我想比起MFC中的CString還是好了不少。在《Exceptional C++ style》中,對basic_string作了剖析,并且得出一個普遍的原則:盡量將函數實現為獨立的函數而不是成員函數。
嘗試用一句話來說明一個模塊的功能,既不多,也不少。如果無法用這樣的一句話加以概括,那么重新考慮規劃該模塊的職責?! ?
第2條:正確、簡單和清晰第一
簡單的說,堅持KISS原則:正確優于速度,簡單優于復雜,清晰優于機巧,
安全優于不安全。
程序必須為閱讀它的人編寫,只是順便用于機器執行 * 編寫程序應該以人為本,計算機第二
計算機系統中最便宜、最快速、最可靠的組件都還不存在
......簡單設計的重要性怎么強調也不過分
原文轉自:http://www.anti-gravitydesign.com