1.注重實效的程式員,不僅要完成工作,還要完成的漂亮。
2.關心你的技藝。
3.思考!你的工作。
4.提供各種選擇,不要找蹩腳的借口。、
5.不要容忍破窗戶。
6.做變化的催化劑。
7.記住大圖景。
8.使品質成為需求問題。
9.定期為你的知識資產投資。
9.1每年至少學習一種語言
9.2每季度至少閱讀一本技術書籍
9.3也要閱讀非技術書籍
9.4上課
9.5參加本機使用者組織
9.6實驗不用的環境
9.7更上潮流
9.8上網
10.批判的分析你所讀到的和聽到的。
11.你說什麼和你怎麼說同樣重要。
12.不要重複你自己。
13.讓複用變的容易。
14.消除無關事物之間的影響。
15.不存在最終決策。
16.用曳光彈找到目標。
17.為了學習而製作原型。
17.1語言的界限就是一個人的世界的界限。
18.靠近問題領域編程。
19.估算,以避免發生意外。
20.通過代碼對進度表進行迭代。
21.用純文字儲存知識。
22.利用命令shell的力量。*Cywin(Bash shell)\UWIN(Korn shell)\Z shell
23.用好一種編輯器。*Emacs \ XEmacs
24.總是使用源碼控制。* TSVN
25.要修正問題,而不是發出職責。
26.調試的第一準則:不要恐慌。
27."slect" 沒有問題。
28.不要假定,要證明。
29.學習一種文本操作語言。
30.編寫能編寫代碼的代碼,夾具。
31.你不可能寫出完美的軟體。
32.早崩潰。
33.如果他不可能發生,用斷言確保他不會發生。
34.將異常用於異常的問題。
35.要有始有終。
36.使模組之間的耦合減至最少。
37.要配置,不要整合。
38.將抽象放進代碼,細節放進中繼資料。
39.分析工作流程,以改變並發性。
40.用服務進行設計。
41.總是為並發進行設計。
42.使視圖和模型分離。
43.用黑板協調工作流程。
44.不要靠巧合編程。
45.估算你的演算法的階。
46.早重構,常重構。
47.為測試而設計。
48.測試你的軟體,否則你的客戶就要測試。
49.不要使用你不理解的嚮導代碼。
50.不要搜尋需求,挖掘他們。
51.與使用者一同工作,以像使用者一同思考。
52.抽象比細節活的更長久。
53.使用項目詞彙表。
54.不要在盒子外面思考,要找到盒子。
55.傾聽反覆出現的疑慮,等你準備好再開始。
56.對有些事情“做”勝於“描述”。
57....
58.在你的代碼上籤名。
書籍:
Analysis Patterns "一個進階架構型模型的寶藏"
Win32 System Service ( Marshall Brian) windows 低級API的簡明參考
Programming Windows "Windows GUI 開發的權威書籍"
web:
SlashDot "癡迷者的新聞,重要的資料" www.slashdot.org
Cetus Links "關於物件導向的數千連結" www.cetus-links.org
WikiWikiWeb "對各種想法進行集體編輯" www.c2.com
源碼控制工具:
RCS prep.ai.mit.edu
CVS cvshome.org
Aegis "基於事物的組態管理"
ClearCase www.rational.com
MKS "源碼完整性" www.mks.com
PVCS "組態管理" www.merant.com
Visual SourceSafe www.microsoft.com
Perforce www.perforce.com
1.資料庫代碼和使用者介面是正交的:你可以改動介面,而不影響資料庫;更換資料庫,而不用改動介面。