基本工具
構建自己的工具庫。 使用原始碼控制。 除錯bug: 找到問題根源 可以快速**復現**bug。 **跟蹤。 向別人解釋程式以找到問題所在。 找bug範圍:先自己**–>確定無誤再找類庫或系統問題。不要固執的認為自己的**沒問題。 不要假設,要驗證。
注重實效的偏執
放棄寫出完美軟體的偏執。 進行防禦性程式設計。 合約。規定**的權力和責任,即圈定範圍。 用文件(其他形式:斷言,註解等)記載以下宣告,並進行校驗,是按合約設計(簡稱dbc)的核心所在。 前置條件 後置條件 類不變項 當**發現某種被認為不可能的事情已經發生時,終止它。 斷言式程式設計: 斷言檢查的是絕不應該發生的事情。 斷言可能會有***,引入新的錯誤。 異常 異常表示即時的,非區域性的控制轉移,是一種級聯的goto。 把異常當做處理邏輯。破壞了封裝,通過異常處理,例程和它們的呼叫者被更緊密的耦合在一起。
程式設計師修煉之道 從小工到專家
在專案開始之前 需求需要挖掘,而不僅僅是收集。找出使用者為何要做特定事情的原因,而不是他們目前做這件事情的方式。建立需求文件 把形式化的模板做備忘錄 好的需求文件會保持抽象 專案範圍的增大需要被記錄和可追溯,以及可評價 通過統計資訊 需求的收集和設計實現不是單向的線性關係,而是雙向關係。它們是 交付...
程式設計師修煉之道 從小工到專家
這本書的適用範圍可以從初學者到有經驗的程式設計師再到專案經理,作為一本偏向理論與思想的書,書中不可避免有些假大空的地方,再加上作者寫完本書的時間還在1999年,書中的很多方法與標準放在今天也已不再實用。但這些都不能掩蓋它的優秀之處,作者曾在本書完成十年後說過,如果這本書是放在現在編寫,1999年的那...
程式設計師修煉之道 從小工到專家(三)
1 斷言式程式設計 a.在自責中有一種滿足感。當我們責備自己時,會覺得再沒人有權責備我們。奧斯卡 王爾德 多里安 格雷的畫像 2 靠巧合程式設計 a.不要靠巧合程式設計 don t program by coincidence b.不要使用你不理解的嚮導 don t use wizard code ...