評分
☆☆☆☆☆
程序員不僅需要寫好代碼,還需要閤理規劃自己的職業發展路徑。本書以作者多年的實踐經驗總結為基礎,從程序員的技能、成長、學習、進階,到架構和管理等的成長周期做瞭深入分析,不僅講到如何寫齣具有專業水準的代碼,還講到如何快速成長,以及如何轉型架構和技術管理。
評分
☆☆☆☆☆
技術精進和管理探秘部分不錯,但架構修煉部分感覺太官方化,有種直接從教材裏麵復製黏貼的感覺,領域驅動設計過於缺乏可操作性
評分
☆☆☆☆☆
提升的部分是不錯,但是宣揚瞭一種加班的精神,12個小時的上班時間, 16小時纔算加班,路上通勤的時間, 作者你不需要睡覺的嗎?我們是人需要睡覺的,不是你傢馬爸爸生産的機器。
評分
☆☆☆☆☆
@微信讀書 19年等77本書,就是大型目錄,說的都很空泛。不如直接看相關的名著。如敏捷相關,高效程序員的45個習慣等。內容太多,蜻蜓點水,跟名詞解釋無區彆。如果想闊知識麵,不如看 李知慧的大型互聯網站,還有就是淘寶味有點重。內容還提到阿裏規範和在阿裏的曆程,感覺對內容沒有什麼關係。何必強調自己的阿裏身份。書中談到太多,設計原則,麵嚮對象,tdd,ddd。技術管理,還有不服氣的員工怎辦。2.5星吧。可以翻,沒有太大價值。
評分
☆☆☆☆☆
技術精進和管理探秘部分不錯,但架構修煉部分感覺太官方化,有種直接從教材裏麵復製黏貼的感覺,領域驅動設計過於缺乏可操作性
於君澤
某互聯網公司技術專傢,在分布式係統架構設計、高並發係統設計、領域建模、研發管理、內建質量等方麵有較多心得,樂於交流和分享,曾創立技術社群“中生代技術”。
維護技術公眾號“技術瑣話”。
李偉山
現任某人工智能公司技術總監,江湖人稱“山哥”,在分布式係統架構設計、高並發係統設計、係統穩定性保障等方麵積纍瞭豐富的實踐經驗,擅於利用數據分析解決實際問題,對新技術有濃厚的興趣,樂於分享。
個人技術公眾號:技術方舟。
張洪亮
網名Hollis,知名技術博主,個人技術博客(http://www.hollischuang.com)閱讀量達數百萬。90後程序員,2015年畢業於哈爾濱理工大學,現任某互聯網公司技術專傢,專注於Java研發、技術架構及程序員的成長等方麵。
個人技術公眾號:Hollis。
彭首長
熊貓優福聯閤創始人,聚美優品前技術總監。在團隊管理、領域設計、分布式架構、高並發設計、IoT架構等方麵有豐富的實踐經驗,擅長行業分析,對新技術高度敏感,熱衷於技術實踐且樂於分享。
劉朋
高績效團隊教練,教練型領導,中生代技術社區聯閤創始人,北京大學理學學士、工學碩士。現就職於中國移動(成都)5G産業研究院,曾任諾基亞通信(成都)有限公司研發經理。在敏捷實踐、高績效團隊教練技術、技術團隊管理等方麵積纍瞭豐富的經驗,並總結齣一套特彆適閤程序員突破自身瓶頸、快速成長的領導力模式
第1篇 技術精進
第1章 程序員技能與成長 2
1.1 如何學習新的編程語言 2
1.1.1 重點學什麼 3
1.1.2 學習方法 3
1.2 代碼規範與單元測試 6
1.2.1 編碼規範 6
1.2.2 單元測試 7
1.2.3 測試驅動設計 9
1.3 使用靜態代碼分析工具 18
1.3.1 什麼是靜態代碼分析 19
1.3.2 靜態代碼分析工具 19
1.4 代碼審查 24
1.4.1 什麼是代碼審查 24
1.4.2 代碼審查的好處 24
1.4.3 如何做代碼審查 25
1.5 清單和模闆 29
1.5.1 清單實踐 29
1.5.2 産品需求文檔模闆 31
1.6 程序員的工作法則 33
1.6.1 工具化法則 33
1.6.2 自動化法則 38
1.6.3 關於文檔的問題 40
1.6.4 關於YAGNI 40
1.7 程序員的工具箱 41
1.7.1 可幫我們提升工作效率的硬件 42
1.7.2 可幫我們提升工作效率的操作係統 43
1.7.3 可幫我們提升工作效率的軟件 43
1.7.4 在綫工具 50
第2章 加速成長與學會學習 56
2.1 程序員如何加速成長 56
2.1.1 積極主動 56
2.1.2 空杯心態 57
2.1.3 選擇閤適的平颱 57
2.1.4 彆怕犯錯 58
2.1.5 注意細節 58
2.1.6 時間管理 58
2.1.7 打破邊界 61
2.1.8 寫業務代碼中的成長機會 61
2.2 學會學習 66
2.2.1 高效學習的方法 67
2.2.2 高效學習的途徑 69
2.2.3 舒適區與小步子原則 72
2.2.4 兩個著名的學習理論 72
2.2.5 終身成長 74
第3章 業務分析與設計 75
3.1 黃金圈法則 75
3.2 UML建模工具 77
3.2.1 用例圖 78
3.2.2 類圖 79
3.2.3 對象圖 80
3.2.4 狀態圖 80
3.2.5 活動圖 81
3.2.6 序列圖 82
3.2.7 協作圖 82
3.2.8 構件圖 83
3.2.9 部署圖 84
3.3 業務分析與設計的方法 85
3.4 係統分析與設計的三個發展階段 87
3.4.1 麵嚮數據驅動分析與設計 87
3.4.2 麵嚮對象和服務分析與設計 88
3.4.3 麵嚮問題域分析與設計 89
3.5 麵嚮對象分析與設計 90
3.5.1 什麼是麵嚮對象 90
3.5.2 麵嚮對象的特徵 91
3.5.3 麵嚮對象設計的原則 91
3.6 麵嚮服務分析與設計 93
3.6.1 Web Service模式 93
3.6.2 ESB模式 94
3.6.3 微服務架構 95
3.7 領域驅動設計 97
3.8 領域模型實踐 102
3.8.1 什麼是領域模型 102
3.8.2 領域模型的作用 102
3.8.3 如何進行領域建模 104
第2篇 架構修煉
第4章 架構思維 110
4.1 分解 110
4.1.1 分解的作用 111
4.1.2 分解的原則 111
4.1.3 分解的時機 112
4.2 集成 112
4.2.1 常見的集成方式 112
4.2.2 集成的難點 115
4.3 動靜分離 120
4.4 復用 121
4.4.1 係統復用的分類 122
4.4.2 可復用性和可維護性的關係 123
4.4.3 可維護性地復用的設計原則 123
4.5 分層 126
4.6 模式 127
4.6.1 分層模式 128
4.6.2 客戶端-服務器模式 131
4.6.3 主從設備模式 132
4.6.4 管道-過濾器模式 133
4.6.5 代理模式 133
4.6.6 P2P模式 134
4.6.7 事件總綫模式 135
4.6.8 MVC模式 136
4.6.9 黑闆模式 137
4.6.10 解釋器模式 138
4.7 抽象 139
4.8 結構化 139
4.8.1 結構化的原則 140
4.8.2 結構化分析工具 140
4.8.3 結構化思維的7個環節 141
4.9 迭代 141
4.10 勿做過度設計 141
第5章 架構設計 143
5.1 架構設計概要 143
5.1.1 業務架構 143
5.1.2 應用架構 145
5.1.3 技術架構 147
5.1.4 數據架構 149
5.2 架構設計的流程 151
5.3 架構設計的核心要素 153
5.3.1 性能 153
5.3.2 可用性 153
5.3.3 伸縮性 154
5.3.4 擴展性 154
5.3.5 安全性 154
5.4 高性能設計 154
5.4.1 主要的性能測試指標 155
5.4.2 性能測試方法 156
5.4.3 性能優化策略 157
5.5 高可用設計 159
5.5.1 高可用性的度量與考核 159
5.5.2 高可用的架構 160
5.5.3 高可用質量保證 164
5.5.4 係統運行監控 165
5.6 可伸縮設計 166
5.6.1 架構的伸縮性設計 166
5.6.2 應用服務的伸縮性設計 167
5.6.3 分布式緩存的伸縮性設計 169
5.6.4 數據存儲的伸縮性設計 169
5.7 可擴展性設計 169
5.7.1 通過消息降低係統的耦閤性 170
5.7.2 通過分布式服務提供可復用的業務 170
5.7.3 建立開放平颱 170
5.8 架構設計的典型案例——訂單係統 171
5.8.1 訂單的基本概念 172
5.8.2 訂單流程 174
5.8.3 訂單係統設計中的挑戰和實踐 178
5.8.4 數據庫優化 182
5.8.5 小結 185
第6章 架構的保障:質量與風險 186
6.1 內建質量體係 186
6.2 從黑天鵝事件到墨菲定律 189
6.2.1 黑天鵝事件 189
6.2.2 蝴蝶效應 191
6.2.3 墨菲定律 191
6.3 軟件質量穩定性之殤 192
6.3.1 業務高速發展帶來的變化 193
6.3.2 問題域的復雜性 193
6.3.3 係統的復雜性 194
6.3.4 技術債問題 194
6.3.5 人、流程、文檔的博弈 195
6.3.6 采用不能掌控的工具和框架 196
6.3.7 質量意識 196
6.4 從康威定律和技術債看研發之痛 197
6.4.1 康威定律 197
6.4.2 通過3個案例來看研發之痛 197
6.4.3 架構方案和業務形態息息相關 204
6.5 求解質量熵 206
6.5.1 運用敏捷思想 207
6.5.2 運用係統化思想 208
6.5.3 技術債償還計劃 209
6.5.4 抓住閤適的時機做架構升級 209
6.5.5 內建質量 210
6.5.6 不迷信,不唯新、不唯上,實踐是檢驗真理的標準 210
6.5.7 復雜的問題域:專項突破 210
6.5.8 領導者的意識 211
6.5.9 創新解決方案 211
6.6 踩過的坑和經驗總結 212
6.6.1 簡單的數字改動導緻電商網站搜索功能失靈 212
6.6.2 應用竟然被外部係統拖垮瞭 212
6.6.3 HashMap與並發 213
6.7 故障復盤流程及模闆 215
6.7.1 什麼是故障復盤 215
6.7.2 為什麼要做故障復盤 215
6.7.3 如何做故障復盤 216
6.7.4 故障復盤模闆 219
6.8 監控與告警 221
6.8.1 監控的重要性 221
6.8.2 監控哪些內容 221
6.8.3 告警 224
6.8.4 監控的架構 224
6.9 應急處置 226
第3篇 管理探秘
第7章 為成為技術主管做準備 232
7.1 構建自我階段性目標 232
7.2 體驗自己的目標身份 234
7.3 勇於抓住機會 235
第8章 從自我管理轉為管理團隊 236
8.1 什麼是領導力 236
8.2 如何構建領導力 237
8.2.1 維度1:提供清晰的領導力風格,並以信任感作為基石 238
8.2.2 維度2:瞭解業務,並帶領團隊達到高績效 240
8.2.3 維度3:發展自己和團隊成員 240
8.2.4 維度4:塑造未來 241
8.3 讓自己成為T型人纔 242
8.4 高效時間管理 243
8.4.1 確定在做的事情符閤自己的目標 244
8.4.2 隨時應用80/20法則 246
8.4.3 創造大塊時間 247
8.5 遇到“不服管”的員工怎麼辦 249
8.5.1 每個人都是不錯的 250
8.5.2 建立親和與信任感 251
8.5.3 從績效評估到建設性反饋 255
8.6 如何處理衝突 261
8.6.1 瞭解産生衝突的原因 261
8.6.2 正確看待衝突 262
8.6.3 處理衝突 263
8.7 引導員工主動工作 264
8.8 如何從帶10個人到帶100個人 266
8.8.1 在管理上麵對的挑戰 267
8.8.2 從管理1.0到管理2.0 269
8.9 如何對上管理 276
8.9.1 做好對上的預期管理 277
8.9.2 及時匯報 277
· · · · · · (
收起)