9787111553083

面向對象的思考過程

馬特·魏斯費爾德 著、黃博文 譯

  • 出版商: 機械工業
  • 出版日期: 2016-10-31
  • 台幣定價: $414
  • 售價: $414
  • 語言: 簡體中文
  • 頁數: 233
  • ISBN: 711155308X
  • ISBN-13: 9787111553083

立即出貨

買這商品的人也買了...

產品描述

<內容簡介>

本書是一部獨具特色的面向對象技術著作。書中結合代碼示例生動透徹地講述了面向對象思想的精髓,讓讀者真正學會以對象方式進行思考。本書共15章,在結構上可以分為兩部分:第壹部分包括第1~10章,探討面向對象的基本概念,比如封裝、多態、繼承等;第二部分包括第11~15章,專注於將這些概念應用於一些通用的面向對象技術中,並結合了一些實用的應用程序。

<章節目錄>

譯者序
作者簡介
前言
第1章面向對象的概念簡介1
1.1基本概念1
1.2對象及遺留系統2
1.3過程式編程與面向對象編程3
1.4由面向過程開發過渡到面向對像開發5
1.4.1過程式編程5
1.4.2面向對象編程6
1.5究竟什麼是對象6
1.5.1對像數據6
1.5.2對象行為7
1.6究竟什麼是類10
1.6.1創建對象10
1.6.2屬性11
1.6.3方法11
1.6 .4消息12
1.7使用類圖作為可視化工具12
1.8封裝和數據隱藏12
1.8.1接口13
1.8.2實現13
1.8.3接口/實現範式的一個真實示例14
1.8.4接口/實現範式的模型14
1.9繼承15
1.9.1超類和子類16
1.9.2抽象16
1.9.3 is—a關係17
1.10多態18
1.11組合21
1.11.1抽象21
1.11.2 has—a關係21
1.12結語21
1.13本章中使用的示例代碼22
1.13.1 C#.NET版本的TestPerson類22
1.13.2 C#.NET版本的TestShape類23
第2章如何以面向對象的方式進行思考25
2.1清楚接口和實現之間的區別26
2.1.1接口27
2.1.2實現27
2.1.3一個接口/實現示例28
2.2使用抽象思維設計接口31
2.3盡可能提供最小化的用戶接口32
2.3.1確定用戶?33
2.3.2對象行為33
2.3.3環境約束34
2.3.4識別公共接口34
2.3.5識別實現34
2.4結語35
2.5引用35
第3章高級的面向對象概念36
3.1構造函數36
3.1.1什麼是構造函數調用37
3.1.2構造函數中包含什麼37
3.1.3默認構造函數37
3.1.4使用多個構造函數38
3.1.5設計構造函數41
3.2錯誤處理41
3.2.1忽略問題42
3.2.2檢查問題併中止應用程序42
3.2.3檢查問題並試圖恢復42
3.2.4拋出異常43
3.3作用域的重要性45
3.3.1局部屬性?45
3.3.2對象屬性46
3.3.3類屬性48
3.4操作符重載49
3.5多重繼承49
3.6對像操作50
3.7結語51
3.8引用51
3.9本章中使用的示例代碼51
第4章類的剖析53
4.1類名53
4.2註釋55
4.3屬性55
4.4構造函數56
4.5訪問器58
4.6公共接口方法60
4.7私有實現方法60
4.8結語61
4.9引用61
4.10本章中使用的示例代碼61
第5章類設計指導63
5.1對現實世界系統建模63
5.2識別公共接口64
5.2.1最小化公共接口64
5.2.2隱藏實現65
5.3設計健壯的構造函數(以及析構函數)65
5.4在類中設計錯誤處理66
5.4.1使用註釋給類加上文檔66
5.4.2構造可以合作的對象67
5.5設計時請考慮重用67
5.6設計時請考慮擴展性67
5.6.1使用描述性的名稱67
5.6.2抽像不可移植的代碼68
5.6.3提供一種方式來複製和比較對象68
5.6.4保持盡可能小的作用域69
5.6.5類的職責與自身高度相關70
5.7設計時請考慮可維護性71
5.7.1在開發過程中使用迭代71
5.7.2測試接口72
5.8使用對象持久化73
5.9結語75
5.10引用75
5.11本章中使用的示例代碼75
第6章使用對象進行設計77
6.1設計指導77
6.1.1提供正確的分析79
6.1.2編寫工作陳述文檔80
6.1.3收集需求80
6.1.4開髮用戶接口的原型81
6.1.5識別類81
6.1.6確定每個類的職責81
6.1.7確定類之間如何協作81
6.1.8創建類模型來描述系統81
6.1.9建立用戶接口原型82
6.2對象包裝82
6.2.1結構化代碼83
6.2.2包裝結構化代碼84
6.2.3包裝不可移植的代碼85
6.2.4包裝已有類86
6.3結語87
6.4引用87
第7章精通繼承和組合88
7.1重用對象88
7.2繼承89
7.2.1通用和特例91
7.2.2設計決策92
7.3組合93
7.4為什麼封裝是面向對象的本質95
7.4.1繼承如何減弱封裝96
7.4.2關於多態的一個具體例子97
7.4.3對象職責98
7.4.4抽像類、虛方法和協議101
7.5結語102
7.6引用103
7.7本章中使用的示例代碼103
第8章框架和重用:使用接口和抽像類進行設計105
8.1代碼:重用還是不重用105
8.2什麼是框架106
8.3什麼是契約107
8.3.1抽像類108
8.3.2接口110
8.3.3綜合運用112
8.3.4編譯器佐證114
8.3.5創建契約115
8.3.6系統插接點117
8.4一個電子商務示例117
8.4.1一個電子商務問題117
8.4.2非重用方式118
8.4.3電子商務解決方案119
8.4.4 UML對像模型120
8.5結語124
8.6引用124
8.7本章中使用的示例代碼124
第9章創建對象及面向對象設計128
9.1組合關係129
9.2分階段構建129
9.3組合類型131
9.3.1聚合131
9.3.2聯合132
9.3. 3同時使用聯合和聚合133
9.4避免依賴133
9.5基數134
9.5.1多個對象聯合136
9.5.2可選的聯合137
9.6一個綜合性示例137
9.7結語138
9.8引用138
第10章創建對像模型139
10.1什麼是UML139
10.2類圖結構140
10.3屬性和方法141
10.3.1屬性142
10.3.2方法142
10.4訪問符號142
10.5繼承143
10.6接口145
10.7組合145
10.7.1聚合145
10.7.2聯合146
10.8基數147
10.9結語148
10.10引用149
第11章對象與可移植數據:XML和JSON150
11.1可移植數據150
11.2 XML152
11.3 XML與HTML152
11.4 XML和麵向對象的語言153
11.5在企業間共享數據154
11.6使用DTD驗證文檔155
11.7將DTD集成到XML文檔中156
11.8使用層疊樣式表161
11.9 JavaScript對象標記163
11.10結語167
11.11引用167
第12章持久化對象:序列化、封送及關係型數據庫168
12.1持久化對象基礎168
12.2將對象保存到平面文件中169
12.2.1序列化文件170
12.2.2再次討論實現和接口172
12.2.3為什麼不保存方法173
12.3序列化過程中使用XML173
12.4寫入關係型數據庫176
12.5結語179
12.6引用179
12.7本章中使用的示例代碼179
……
第13章Web服務、移動應用及混合應用中的對象183
第14章對象及客戶端/服務器端應用程序204
第15章設計模式217