注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信架構(gòu)整潔之道

架構(gòu)整潔之道

架構(gòu)整潔之道

定 價:¥99.00

作 者: [美] Robert C. Martin(羅伯特C.馬?。?著,孫宇聰 譯
出版社: 電子工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787121347962 出版時間: 2018-09-01 包裝: 平裝
開本: 16 頁數(shù): 348 字?jǐn)?shù):  

內(nèi)容簡介

  《架構(gòu)整潔之道》是創(chuàng)造“Clean神話”的Bob大叔在架構(gòu)領(lǐng)域的登峰之作,圍繞“架構(gòu)整潔”這一重要導(dǎo)向,系統(tǒng)地剖析其緣起、內(nèi)涵及應(yīng)用場景,涵蓋軟件研發(fā)完整過程及所有核心架構(gòu)模式?!都軜?gòu)整潔之道》分為6部分,第1部分綱領(lǐng)性地提出軟件架構(gòu)設(shè)計的終目標(biāo),描述軟件架構(gòu)設(shè)計的重點與模式;第2~4部分從軟件開發(fā)中三個基礎(chǔ)編程范式的定義和特征出發(fā),進(jìn)一步描述函數(shù)、組件、服務(wù)設(shè)計與實現(xiàn)的定律,以及它們是如何有效構(gòu)建軟件系統(tǒng)的整體架構(gòu)的;第5部分從整潔架構(gòu)的定義開始,詳細(xì)闡述軟件架構(gòu)設(shè)計過程中涉及的方方面面,包括劃分內(nèi)部組件邊界、應(yīng)用常見設(shè)計模式、避開錯誤、降低成本、處理特殊情況等,并以實戰(zhàn)案例將內(nèi)容有機(jī)整合起來;第6部分講述具體實現(xiàn)細(xì)節(jié);附錄則透過作者數(shù)十年的軟件從業(yè)經(jīng)歷再次印證《架構(gòu)整潔之道》的觀點。 對于每一位軟件研發(fā)從業(yè)人員——無論從事的是具體編碼實現(xiàn)、架構(gòu)設(shè)計,還是軟件研發(fā)管理,《架構(gòu)整潔之道》都是不可或缺的。

作者簡介

  Robert C. Martin,Object Mentor公司總裁,面向?qū)ο笤O(shè)計、模式、UML、敏捷方法學(xué)和極限編程領(lǐng)域的資深顧問。他是Designing Object-Oriented C++ Applications Using the Booch Method 以及 Jolt 獲獎圖書 Agile Software Development, Principles,Palterns,and Practices(中譯版《敏捷軟件開發(fā):原則、模式與實踐》)《代碼整潔之道》等暢銷書作者。 譯者簡介 孫宇聰:曾在谷歌工作多年,任谷歌高級SRE(Senior Site Reliblity Engineer),前Coding.net 技術(shù)負(fù)責(zé)人。

圖書目錄

第1部分 概述
第1章 設(shè)計與架構(gòu)究竟是什么 3
目標(biāo)是什么 4
案例分析 5
本章小結(jié) 11
第2章 兩個價值維度 12
行為價值 13
架構(gòu)價值 13
哪個價值維度更重要 14
艾森豪威爾矩陣 15
為好的軟件架構(gòu)而持續(xù)斗爭 16
第2部分 從基礎(chǔ)構(gòu)件開始:編程范式
第3章 編程范式總覽 21
結(jié)構(gòu)化編程 22
面向?qū)ο缶幊? 22
函數(shù)式編程 23
僅供思考 23
本章小結(jié) 24
第4章 結(jié)構(gòu)化編程 25
可推導(dǎo)性 26
goto是有害的 28
功能性降解拆分 29
形式化證明沒有發(fā)生 29
科學(xué)來救場 29
測試 30
本章小結(jié) 31
第5章 面向?qū)ο缶幊? 32
封裝 33
繼承 36
多態(tài) 38
本章小結(jié) 44
第6章 函數(shù)式編程 45
整數(shù)平方 46
不可變性與軟件架構(gòu) 47
可變性的隔離 48
事件溯源 49
本章小結(jié) 51
第3部分 設(shè)計原則
第7章 SRP:單一職責(zé)原則 56
反面案例2:代碼合并 59
解決方案 60
本章小結(jié) 61
第8章 OCP:開閉原則 62
思想實驗 63
依賴方向的控制 67
信息隱藏 67
本章小結(jié) 67
第9章 LSP:里氏替換原則 68
繼承的使用指導(dǎo) 69
正方形/長方形問題 70
LSP與軟件架構(gòu) 70
違反LSP的案例 71
本章小結(jié) 73
第10章 ISP:接口隔離原則 74
ISP與編程語言 76
ISP與軟件架構(gòu) 76
本章小結(jié) 77
第11章 DIP:依賴反轉(zhuǎn)原則 78
穩(wěn)定的抽象層 79
工廠模式 80
具體實現(xiàn)組件 82
本章小結(jié) 82
第4部分 組件構(gòu)建原則
第12章 組件 84
組件發(fā)展史 85
重定位技術(shù) 88
鏈接器 88
本章小結(jié) 90
第13章 組件聚合 91
復(fù)用/發(fā)布等同原則 92
共同閉包原則 93
共同復(fù)用原則 94
組件聚合張力圖 95
本章小結(jié) 97
第14章 組件耦合 98
無依賴環(huán)原則 99
自上而下的設(shè)計 105
穩(wěn)定依賴原則 106
穩(wěn)定抽象原則 112
本章小結(jié) 117
第5部分 軟件架構(gòu)
第15章 什么是軟件架構(gòu) 120
開發(fā)(Development) 122
部署(Deployment) 123
運行(Operation) 123
維護(hù)(Maintenance) 124
保持可選項 124
設(shè)備無關(guān)性 126
垃圾郵件 128
物理地址尋址 129
本章小結(jié) 130
第16章 獨立性 131
用例 132
運行 133
開發(fā) 133
部署 134
保留可選項 134
按層解耦 135
用例的解耦 136
解耦的模式 136
開發(fā)的獨立性 137
部署的獨立性 137
重復(fù) 138
再談解耦模式 139
本章小結(jié) 141
第17章 劃分邊界 142
幾個悲傷的故事 143
FitNesse 146
應(yīng)在何時、何處畫這些線 148
輸入和輸出怎么辦 151
插件式架構(gòu) 152
插件式架構(gòu)的好處 153
本章小結(jié) 154
第18章 邊界剖析 155
跨邊界調(diào)用 156
令人生畏的單體結(jié)構(gòu) 156
部署層次的組件 158
線程 159
本地進(jìn)程 159
服務(wù) 160
本章小結(jié) 161
第19章 策略與層次 162
層次(Level) 163
本章小結(jié) 166
第20章 業(yè)務(wù)邏輯 167
業(yè)務(wù)實體 168
用例 169
請求和響應(yīng)模型 171
本章小結(jié) 172
第21章 尖叫的軟件架構(gòu) 173
架構(gòu)設(shè)計的主題 174
架構(gòu)設(shè)計的核心目標(biāo) 175
那Web呢 175
框架是工具而不是生活信條 175
可測試的架構(gòu)設(shè)計 176
本章小結(jié) 176
第22章 整潔架構(gòu) 177
依賴關(guān)系規(guī)則 179
一個常見的應(yīng)用場景 183
本章小結(jié) 184
第23章 展示器和謙卑對象 185
謙卑對象模式 186
展示器與視圖 186
測試與架構(gòu) 187
數(shù)據(jù)庫網(wǎng)關(guān) 188
數(shù)據(jù)映射器 188
服務(wù)監(jiān)聽器 189
本章小結(jié) 189
第24章 不完全邊界 190
省掉最后一步 191
單向邊界 192
門戶模式 193
本章小結(jié) 193
第25章 層次與邊界 194
基于文本的冒險游戲:Hunt The Wumpus 195
可否采用整潔架構(gòu) 196
交匯數(shù)據(jù)流 199
數(shù)據(jù)流的分割 199
本章小結(jié) 201
第26章 Main組件 203
最細(xì)節(jié)化的部分 204
本章小結(jié) 208
第27章 服務(wù):宏觀與微觀 209
面向服務(wù)的架構(gòu) 210
服務(wù)所帶來的好處 210
運送貓咪的難題 212
對象化是救星 213
基于組件的服務(wù) 215
橫跨型變更 216
本章小結(jié) 216
第28章 測試邊界 217
測試也是一種系統(tǒng)組件 218
可測試性設(shè)計 219
測試專用API 220
本章小結(jié) 221
第29章 整潔的嵌入式架構(gòu) 222
“程序適用測試”測試 225
目標(biāo)硬件瓶頸 228
本章小結(jié) 238
第6部分 實現(xiàn)細(xì)節(jié)
第30章 數(shù)據(jù)庫只是實現(xiàn)細(xì)節(jié) 240
關(guān)系型數(shù)據(jù)庫 241
為什么數(shù)據(jù)庫系統(tǒng)如此流行 242
假設(shè)磁盤不存在會怎樣 243
實現(xiàn)細(xì)節(jié) 243
但性能怎么辦呢 244
一段軼事 244
本章小結(jié) 246
第31章 Web是實現(xiàn)細(xì)節(jié) 247
無盡的鐘擺 248
總結(jié)一下 250
本章小結(jié) 251
第32章 應(yīng)用程序框架是實現(xiàn)細(xì)節(jié) 252
框架作者 253
單向婚姻 253
風(fēng)險 254
解決方案 255
不得不接受的依賴 255
本章小結(jié) 256
第33章 案例分析:視頻銷售網(wǎng)站 257
產(chǎn)品 258
用例分析 258
組件架構(gòu) 260
依賴關(guān)系管理 261
本章小結(jié) 262
第34章 拾遺 263
按層封裝 264
按功能封裝 266
端口和適配器 268
按組件封裝 270
具體實現(xiàn)細(xì)節(jié)中的陷阱 274
組織形式與封裝的區(qū)別 275
其他的解耦合模式 277
本章小結(jié):本書拾遺 279
后序 280
附錄A 架構(gòu)設(shè)計考古 283

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號