上星期拿了三本書來看,其中一本就是《程式設計師應該知道的97件事》。
大概通讀了一遍裡面有73位著名的人物,分別寫了97件事。
每個人都有自己總結的一句話,對於程式設計師們確實很實用。
這裡面的人物在程式設計師這一職業中有工作20年以上的經歷,有自己開公司的也有是博士、教授的。
若能認真遵守這97件建議,我想你應該是乙個了不起的程式設計師了。
1.謹慎行動
2.函式式程式設計原則的應用
3.試問自己「使用者會怎麼做」(你不能算是使用者)
4.編碼標準的自動化
5.美在於簡單
6.在你重構之前
7.謹防共享
8.童子軍規則
9.在責備別人之前先檢查自己的**
10.謹慎選擇你的工具
11.領域語言裡的**
12.**就是設計
13.關於**布局的麻煩事
14.**審查
15.編寫**的理由
16.對注釋的乙個注釋
17.**說不清,注釋來補充
18.不斷學習
19.易用不是一種能力
20.早部署,常部署
21.區分業務異常和技術異常
22.有針對性的勤加練習
23.領域特定語言
24.不要怕搞砸
25.不要在你的測試**裡裝可愛
26.不要忽略那個錯誤
27.不要只學習語言,還要了解它的文化內涵
28.不要把程式釘死在老地方
29.不要指望「魔法會在此發生」
30.不要重複你自己
31.別碰那些**!
32.封裝行為,而不僅僅是狀態
33.浮點數不是真正的數
34.開源助你實現雄心壯志
35.api設計的**法則
36.高手神話
37.加班加點,事倍功半
38.如何使用bug***
39.**的去蕪存菁
40.安裝我吧
41.程序間通訊對應用程式響應的影響
42.保持構建的整潔
43.知道如何使用命令列工具
44.通曉兩門以上程式語言
45.了解你的ide
46.了解你的侷限性
47.知道你下次提交的內容
48.大型、相關性的資料屬於資料庫
49.學習外語
50.要學會估算
51.學著說「hello, world」
52.讓你的專案能表達它自己
53.鏈結器並不神秘
54.臨時解決方案的壽命
55.使介面易於正確使用,難於錯誤使用
56.讓不可見的更加顯眼
57.在並行系統中使用訊息傳遞可獲得更好的伸縮性
58.帶給未來的訊息
59.錯失採用多型的機會
60.奇聞軼事:測試人員是你的朋友
61.二進位制檔案僅此乙份
62.有**有真相
63.擁有(及重構)構建指令碼
64.結對程式設計,感受流程
65.特定領域型別勝過原始型別
66.預防錯誤
67.專業程式設計師
68.把一切都置於版本控制之下
69.放下滑鼠,遠離鍵盤
70.閱讀**
71.讀懂人性
72.經常重新發明輪子
73.抗拒單件模式的**
74.通向高效能之路布滿了髒**炸彈
75.簡單來自於刪減
76.單一職責原則
77.從yes開始
78.請轉回去做自動化、自動化、自動化
79.充分利用**分析工具
80.為必需行為測試,而不是偶發行為
81.測試要嚴密而具體
82.在睡覺的時候(或度週末的時候)進行測試
83.軟體開發的工程嚴密性來自測試
84.關於狀態的思想
85.一人技短,二人技長
86.錯上加錯就是貌似正確(並且難以糾正)
87.我寫**為人人,人人為我寫**
88.unix工具是你的好朋友
89.使用正確的演算法和資料結構
90.冗長的日誌會讓你睡不安枕
91.wet掩蓋了效能瓶頸
92.當程式設計師和測試人員開始合作的時候
93.編寫**時要像餘生都要給它提供支援一樣
94.使用例項編寫小函式
95.測試為人而寫
96.你應該關心你的**
97.心口不一的客戶
讀《程式設計師應該知道的97件事》筆記
技術債務 當你發現必須在 幹得好 和 幹得快 之間做出抉擇的時候,一般都會選擇 幹得快 並提醒自己將來再來返工。下一輪迭代自有其新的問題,工作重點轉移到新問題上,老問題還存在。martin fowler把它分成 蓄意和無意 把技術 債務立即記錄到任務卡上,在惡化前償還。無論你承諾了什麼,都得小心處置...
《程式設計師應該知道的97件事》樣章
謹慎行動 act with prudence seb rose 無論你承諾了什麼,都得小心處置,顧及後果 無名氏 在一次迭代開始時,各項任務看上去安排得張弛有度,但仍無法避免在某段時間會承受到巨大進度壓力。當你發現必須在 幹得好 和 幹得快 之間作出抉擇時,一般都會選擇 幹得快 並提醒自己將來再來返...
《程式設計師應該知道的97件事》 不斷學習
你需要不斷學習,才能保持自己的 市場號召力 否則,你會變成恐龍,在乙個職位上日復一日,直到有一天,你不再被需要,或者你的工作被外包給了某個更便宜的機構。為了保險起見,你需要為你自己的教育負起責任。以下列出了一些學習途徑,它們中的大多數可以在網際網路上免費獲得。如果你真的想沉浸在一項技術中,那就親自動...