編輯推薦
1. 匯聚編程大師40餘年編程生涯的心得體會
2. 闡釋軟件工藝中的原理、技術、工具和實踐
3. 助力專業軟件開發人員具備令人敬佩的職業素養
成功的程序員在以往的工作和生活中都曾經曆過大大小小的不確定性,承受過永無休止的壓力。他們之所以能夠成功,是因為擁有一個共同點,都深切關注創建軟件所需的各項實踐。他們將軟件開發視為一種需要精雕細琢加以修煉的技藝,他們以專業人士的標準要求自己,他們具有職業素養。
軟件開發大師Robert C. Martin在書中介紹瞭真實軟件技藝中的各項原則、技術、工具和實踐,展示瞭怎麼以自豪、自尊和自信的心態進行軟件開發,怎麼取得卓越錶現和豐碩成果,怎麼做到有效溝通和確切估算,怎麼以坦誠的心態麵對睏難,並引導讀者認識到專業程序員肩負的責任重大,闡述瞭什麼纔是程序員的職業素養。
書中的具體內容包括:
● 成為真正的軟件專業人士需要具備哪些條件,如何應對彼此衝突又緊張的進度錶和不近情理的管理人員;
● 如何做到流暢編程,剋服阻塞狀態;
● 如何應對無休止的工作壓力,避免崩潰;
● 如何培養堅持不懈的態度,如何擁抱新的開發範式;
● 如何管理好時間,避免身陷泥潭無法自拔;
● 如何培育有利於程序員和開發團隊茁壯成長的環境;
● 什麼時候應該說“不”,怎麼說;
● 什麼時候應該說“是”,承諾意味著什麼。
軟件強大、優雅而實用,讓人驚嘆不已,不論是開發者還是用戶都樂於使用這樣的軟件。它們並非是由機器編寫齣來的,而是齣自那些對軟件技藝擁有堅定信念的專業軟件開發者之手。本書將幫助讀者成為專業軟件開發者中的一員,並贏得隻有他們纔能擁有的榮譽感和成就感。
內容簡介
本書是編程大師“Bob 大叔”40餘年編程生涯的心得體會的總結,講解要成為真正專業的程序員需要具備什麼樣的態度,需要遵循什麼樣的原則,需要采取什麼樣的行動。作者以自己以及身邊的同事走過的彎路、犯過的錯誤為例,意在為後來者引路,助其職業生涯邁上更高颱階。
作者簡介
作者介紹
Robert C. Martin,軟件開發大師,設計模式和敏捷開發先驅,敏捷聯盟首任主席,C++ Report前主編,被後輩程序員尊稱為“Bob大叔”。20世紀7 0年代初成為職業程序員,後創辦Object Mentor公司並任總裁。Martin還是一名多産的作傢,至今已發錶數百篇文章、論文和博客文章。除本書外,還著有《代碼整潔之道》《敏捷軟件開發:原則、模式和實踐》《UML:Java程序員指南》等。他創辦瞭cleancoders.com網站,專為軟件開發人員提供教育視頻。
譯者介紹
餘晟,混跡軟件開發和互聯網行業多年,目前在滬江網負責研發和架構管理工作。業餘喜愛閱讀、思考,關注工程師的全麵發展,探索更聰明的技術方案,樂於幫助外界更多理解IT行業的約束、規律和習慣。
章顯洲,螞蟻金服高級項目專傢,業餘以技術翻譯作為個人修煉與迴饋軟件開發社區的途徑。自2009年來,翻譯和與人閤譯多本技術管理書籍,偶爾也會齣現在技術社區聚會上作一些分享。近年來主要緻力於螞蟻金服基礎設施和架構升級方麵的項目集管理。
目錄
必讀引言 1
第1章 專業主義 7
1.1 清楚你要什麼 8
1.2 擔當責任 8
1.3 首先,不行損害之事 10
1.3.1 不要破壞軟件功能 10
1.3.2 不要破壞結構 12
1.4 職業道德 13
1.4.1 瞭解你的領域 14
1.4.2 堅持學習 16
1.4.3 練習 16
1.4.4 閤作 17
1.4.5 輔導 17
1.4.6 瞭解業務領域 17
1.4.7 與雇主/客戶保持一緻 18
1.4.8 謙遜 18
1.5 參考文獻 18
第2章 說“不” 19
2.1 對抗角色 21
2.2 高風險時刻 24
2.3 要有團隊精神 25
2.3.1 試試看 26
2.3.2 消極對抗 28
2.4 說“是”的成本 30
2.5 如何寫齣好代碼 35
第3章 說“是” 37
3.1 承諾用語 39
3.1.1 識彆“缺乏承諾”的徵兆 40
3.1.2 真正的承諾聽起來是怎樣的 40
3.1.3 總結 43
3.2 學習如何說“是” 43
3.2.1 “試試”的另一麵 43
3.2.2 堅守原則 44
3.3 結論 46
第4章 編碼 47
4.1 做好準備 48
4.1.1 淩晨3點寫齣的代碼 49
4.1.2 焦慮時寫下的代碼 50
4.2 流態區 51
4.2.1 音樂 52
4.2.2 中斷 53
4.3 阻塞 53
4.4 調試 55
4.5 保持節奏 57
4.5.1 知道何時應該離開一會 58
4.5.2 開車迴傢路上 58
4.5.3 洗澡 58
4.6 進度延遲 58
4.6.1 期望 59
4.6.2 盲目衝刺 59
4.6.3 加班加點 60
4.6.4 交付失誤 60
4.6.5 定義“完成” 61
4.7 幫助 61
4.7.1 幫助他人 61
4.7.2 接受他人的幫助 62
4.7.3 輔導 62
4.8 參考文獻 63
第5章 測試驅動開發 65
5.1 此事已有定論 66
5.2 TDD的三項法則 67
5.3 TDD的優勢 68
5.3.1 確定性 68
5.3.2 缺陷注入率 68
5.3.3 勇氣 69
5.3.4 文檔 69
5.3.5 設計 70
5.3.6 專業人士的選擇 70
5.4 TDD的局限 70
5.5 參考文獻 71
第6章 練習 73
6.1 引子 73
6.1.1 10的22次方 74
6.1.2 轉變 75
6.2 編程柔道場 76
6.2.1 卡塔 77
6.2.2 瓦薩 78
6.2.3 自由練習 78
6.3 自身經驗的拓展 79
6.3.1 開源 79
6.3.2 關於練習的職業道德 79
6.4 結論 80
6.5 參考文獻 80
第7章 驗收測試 81
7.1 需求的溝通 81
7.1.1 過早精細化 83
7.1.2 遲來的模糊性 83
7.2 驗收測試 85
7.2.1 “完成”的定義 85
7.2.2 溝通 88
7.2.3 自動化 88
7.2.4 額外工作 89
7.2.5 驗收測試什麼時候寫,由誰來寫 90
7.2.6 開發人員的角色 90
7.2.7 測試的協商與被動推進 91
7.2.8 驗收測試和單元測試 93
7.2.9 圖形界麵及其他復雜因素 93
7.2.10 持續集成 94
7.3 結論 95
第8章 測試策略 97
8.1 QA應該找不到任何錯誤 98
8.1.1 QA也是團隊的一部分 98
8.1.2 需求規約定義者 98
8.1.3 特性描述者 98
8.2 自動化測試金字塔 98
8.2.1 單元測試 99
8.2.2 組件測試 100
8.2.3 集成測試 100
8.2.4 係統測試 101
8.2.5 人工探索式測試 102
8.3 結論 102
8.4 參考文獻 102
第9章 時間管理 103
9.1 會議 104
9.1.1 拒絕 104
9.1.2 離席 105
9.1.3 確定議程與目標 105
9.1.4 立會 106
9.1.5 迭代計劃會議 106
9.1.6 迭代迴顧和DEMO展示 107
9.1.7 爭論/反對 107
9.2 注意力點數 108
9.2.1 睡眠 108
9.2.2 咖啡因 108
9.2.3 恢復 109
9.2.4 肌肉注意力 109
9.2.5 輸入與輸齣 109
9.3 時間拆分和番茄工作法 110
9.4 要避免的行為 110
9.5 死鬍同 111
9.6 泥潭 111
9.7 結論 112
第10章 預估 113
10.1 什麼是預估 115
10.1.1 承諾 115
10.1.2 預估 115
10.1.3 暗示性承諾 117
10.2 PERT 118
10.3 預估任務 120
10.4 大數定律 122
10.5 結論 123
10.6 參考文獻 123
第11章 壓力 125
11.1 避免壓力 127
11.1.1 承諾 127
11.1.2 保持整潔 127
11.1.3 危機中的紀律 128
11.2 應對壓力 128
11.2.1 不要驚慌失措 128
11.2.2 溝通 129
11.2.3 依靠你的紀律原則 129
11.2.4 尋求幫助 129
11.3 結論 129
第12章 協作 131
12.1 程序員與人 133
12.1.1 程序員與雇主 133
12.1.2 程序員與程序員 135
12.2 小腦 137
12.3 結論 138
第13章 團隊與項目 139
13.1 隻是簡單混閤嗎 139
13.1.1 有凝聚力的團隊 140
13.1.2 如何管理有凝聚力的 團隊 141
13.1.3 項目承包人的睏境 142
13.2 結論 142
13.3 參考文獻 143
第14章 輔導、學徒期與技藝 145
14.1 失敗的學位教育 145
14.2 輔導 146
14.2.1 DIGI-COMP I,我的 第一颱計算機 146
14.2.2 高中時代的ECP-18 148
14.2.3 非常規輔導 150
14.2.4 艱難的錘煉 150
14.3 學徒期 151
14.3.1 軟件學徒期 152
14.3.2 現實情況 154
14.4 技藝 154
14.5 結論 155
附錄 工具 157
代碼整潔之道 程序員的職業素養 下載 mobi epub pdf txt 電子書 格式
評分
☆☆☆☆☆
評分
☆☆☆☆☆
不說瞭都是淚
評分
☆☆☆☆☆
第7章包含基數排序的相關內容,並給齣瞭下界證明。
評分
☆☆☆☆☆
挺好的,對自己的編碼挺有幫助的,一群裝逼帶你飛,發車瞭,趕緊上車,帶你上王者
評分
☆☆☆☆☆
評分
☆☆☆☆☆
/⌒ /
評分
☆☆☆☆☆
此書可以當科譜讀物瞭,書中的一些內容,可能學習下。主要是學習思想瞭。
評分
☆☆☆☆☆
我在京東買瞭這麼多年,所謂閱商無數,但與賣傢您交流,我隻想說,老闆你實在是太好瞭,你的高尚情操太讓人感動瞭,本人對此賣傢之仰慕如滔滔江水連綿不絕,海枯石爛,天崩地裂,永不變心。交易成功後,我的心情是久久不能平靜,自古英雄齣少年,賣傢年紀輕輕,就有經天緯地之纔,定國安邦之智,而今,天佑我大中華,滄海桑田5000年,神州平地一聲雷,飛沙走石,大霧迷天,朦朧中,隻見頂天立地一金甲天神立於天地間,花見花開,人見人愛,這位英雄手持雙斧,二目如電,一斧下去,混沌初開,二斧下去,女媧造人,三斧下去,小生傾倒。得此大英雄,實乃國之幸也,民之福,人之初也,怎不叫人喜極而泣……看著交易成功,我竟産生齣一種無以名之的悲痛感——啊,這麼好的賣傢,如果將來我再也遇不到瞭,那我該怎麼辦?直到我毫不猶豫地把賣傢的店收藏瞭,我內心的那種激動纔逐漸平靜下來,可是我立刻想到,這麼好的賣傢,倘若彆人看不到,那麼不是浪費心血嗎?經過痛苦的思想鬥爭,我終於下定決心,犧牲小我,奉獻大我。我要以此評價奉獻給世人賞閱,我要給好評……評到所有人都看到為止!
評分
☆☆☆☆☆
臣本布衣,躬耕於南陽,苟全性命於亂世,不求聞達於諸侯。先帝不以臣卑鄙,猥自枉屈,三顧臣於草廬之中,谘臣以當世之事,由是感激,遂許先帝以驅馳。後值傾覆,受任於敗軍之際,奉命於危難之間,爾來二十有一年矣。 先帝知臣謹慎,故臨崩寄臣以大事也。受命以來,夙夜憂嘆,恐托付不效,以傷先帝之明,故五月渡濾,深入不毛。今南方已定,兵甲已足,當奬率三軍,北定中原,庶竭駑鈍,攘除奸凶,興復漢室,還於舊都。此臣所以報先帝而忠陛下之職分也。至於斟酌損益,進盡忠言,則攸之、禕、允之任也。 願陛下托臣以討賊興復之效,不效則治臣之罪,以告先帝之靈。若無興德之言,則責攸之、禕、允等之慢,以彰其咎;陛下亦宜自謀,以谘諏善道,察納雅言,深追先帝遺詔。臣不勝受恩感激。 今當遠離,臨錶涕零,不知所言。