作為注重實效的程式設計師,我們的基本材料不是木頭,不是鐵,而是知識,在設計、實現、測試、文件中表達我們的知識,我們使用純文本來儲存我們所擁有的知識,除非使用純文字會讓計算機花在計算的代價非常大,不必擔心當中重要的資訊會洩露,往往會洩露的資訊都是沒有進行加密處理的。有時計算機處理二進位制可能會更加高效,所以,在不同的編譯環境下,我們應選擇滿足我們要求的儲存方式。另外,純文字不會過時,人們總是可以讀懂,因此更易於測試。
注重實效的程式設計師至少需要精通一種編輯器,並可以用於實現所有的編輯任務,工具是手的延伸,還要學會使用原始碼控制系統,這樣可以返回幾天甚至幾周之前的程式**,即使你的團隊只有你乙個人,也要總是使用原始碼進行控制,確保這些工作當中的細節儲存在倉庫當中。把整個專案置於原始碼控制系統的保護之下具有一項很大的隱蔽的好處,那就是你可以進行自動的和可重複的產品構建。
程式設計師在一再重複的任務面前,往往會想要取巧,為此需要構建**生成器,以減少出現重複工作帶來的錯誤。被動**生成器減少敲擊次數,它們本質上是引數化模板。主動**生成器只是一種便利手段。**生成不一定要很複雜,**生成器不一定要生成**。
程式設計師修煉之道 從小工到專家
在專案開始之前 需求需要挖掘,而不僅僅是收集。找出使用者為何要做特定事情的原因,而不是他們目前做這件事情的方式。建立需求文件 把形式化的模板做備忘錄 好的需求文件會保持抽象 專案範圍的增大需要被記錄和可追溯,以及可評價 通過統計資訊 需求的收集和設計實現不是單向的線性關係,而是雙向關係。它們是 交付...
程式設計師修煉之道 從小工到專家
基本工具 構建自己的工具庫。使用原始碼控制。除錯bug 找到問題根源 可以快速 復現 bug。跟蹤。向別人解釋程式以找到問題所在。找bug範圍 先自己 確定無誤再找類庫或系統問題。不要固執的認為自己的 沒問題。不要假設,要驗證。注重實效的偏執 放棄寫出完美軟體的偏執。進行防禦性程式設計。合約。規定 ...
程式設計師修煉之道 從小工到專家
這本書的適用範圍可以從初學者到有經驗的程式設計師再到專案經理,作為一本偏向理論與思想的書,書中不可避免有些假大空的地方,再加上作者寫完本書的時間還在1999年,書中的很多方法與標準放在今天也已不再實用。但這些都不能掩蓋它的優秀之處,作者曾在本書完成十年後說過,如果這本書是放在現在編寫,1999年的那...