没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
327页
The foundation of all object-oriented software design, including agile methods such as extreme programming, is object thinking. But many developers have not mastered its underlying concepts and principles—relying on methodology and process instead of fully exploiting the power of object thinking in software design. In this essential, high-level reference, well-known object technologist David West provides a deep historical and contextual discussion of object thinking, including the behavioral approaches to object discovery and design. Readers will master the fundamental principles and learn how to apply object thinking to improve software development at every phase of the process.
资源推荐
资源详情
资源评论
Microsoft ObjectThinking
Table of Contents
Microsoft ObjectThinking.................................................................................................................1
Preface................................................................................................................................................4
A Different (and Possibly Controversial) Kind of Software Book............................................4
Paths and Destinations............................................................................................................6
Who Should Read This Book...................................................................................................7
How This Book Is Organized...................................................................................................8
Introduction......................................................................................................................................10
Overview...............................................................................................................................10
Curiosities..............................................................................................................................11
The “People Issue”.................................................................................................................12
The Need for Better Developers.....................................................................................12
Producing Better Developers..........................................................................................14
Object Thinking......................................................................................................................15
XP and Object Thinking.........................................................................................................17
Chapter 1: ObjectThinking..............................................................................................................18
Overview...............................................................................................................................18
Observing the Object Difference............................................................................................19
Object Thinking = Think Like an Object.................................................................................26
Problem = Solution................................................................................................................29
Object Thinking and Agile Development Practices................................................................31
Values.............................................................................................................................31
Selected Practices..........................................................................................................33
Thinking Is Key......................................................................................................................35
Software Development Is a Cultural Activity...................................................................36
Onward..................................................................................................................................40
Chapter 2: Philosophical Context..................................................................................................43
Overview...............................................................................................................................43
Philosophy Made Manifest—Dueling Languages..................................................................45
SIMULA...........................................................................................................................47
C++.................................................................................................................................49
Smalltalk..........................................................................................................................50
Formalism and Hermeneutics................................................................................................55
Postmodern Critiques............................................................................................................62
Chapter 3: From Philosophy toCulture..........................................................................................66
Overview...............................................................................................................................66
Four Presuppositions.............................................................................................................68
One: Everything is an object...........................................................................................68
Two: Simulation of a problem domain drives object discovery and definition.................72
Microsoft ObjectThinking
i
Table of Contents
Chapter 3: From Philosophy toCulture
Three: Objects must be composable..............................................................................77
Four: Distributed cooperation and communication must replace hierarchical
centralized control as an organizational paradigm....................................................80
Object Principles—Software Principles..................................................................................81
Cooperating Cultures.............................................................................................................85
Chapter 4: Metaphor: Bridge to the Unfamiliar.............................................................................88
Overview...............................................................................................................................88
The Lego Brick Metaphor.......................................................................................................92
The Object-as-Person Metaphor............................................................................................96
Software as Theater; Programmers as Directors.................................................................102
Ants, Not Autocrats..............................................................................................................104
Two Human-Derived Metaphors..........................................................................................106
Inheritance....................................................................................................................106
Responsibility................................................................................................................107
Thinking Like an Object.......................................................................................................108
Chapter 5: Vocabulary: Words toThink With..............................................................................109
Overview.............................................................................................................................109
Essential Terms...................................................................................................................112
Object............................................................................................................................112
Responsibility................................................................................................................114
Message........................................................................................................................117
Interface (Protocol)........................................................................................................118
Extension Terms..................................................................................................................119
Collaboration and Collaborator.....................................................................................119
Class.............................................................................................................................120
Class Hierarchy (Library)..............................................................................................121
Abstract/Concrete.........................................................................................................121
Inheritance....................................................................................................................122
Delegation.....................................................................................................................126
Polymorphism...............................................................................................................127
Encapsulation................................................................................................................128
Component....................................................................................................................129
Framework....................................................................................................................129
Pattern..........................................................................................................................130
Implementation Terms.........................................................................................................131
Method..........................................................................................................................131
Variable.........................................................................................................................132
Late/Dynamic Binding...................................................................................................132
Auxiliary Concepts...............................................................................................................133
Domain..........................................................................................................................134
Microsoft ObjectThinking
ii
Table of Contents
Chapter 5: Vocabulary: Words toThink With
Business Requirement..................................................................................................135
Business Process Reengineering.................................................................................135
Application.....................................................................................................................135
Chapter 6: Method, Process, andModels....................................................................................137
Overview.............................................................................................................................137
Two Decades of Object Methodology..................................................................................139
Purpose and Use of Method................................................................................................144
A Syncretic Approach..........................................................................................................148
Models.................................................................................................................................151
Semantic Net.................................................................................................................152
Object Cubes................................................................................................................154
Interaction Diagram.......................................................................................................156
Static Relation Diagram................................................................................................159
Object State Chart.........................................................................................................161
Chapter 7: Discovery.....................................................................................................................163
Overview.............................................................................................................................163
Domain Understanding........................................................................................................164
Domain Anthropology....................................................................................................165
Object Definition...................................................................................................................176
Heuristics......................................................................................................................185
Chapter 8: Thinking TowardDesign.............................................................................................191
Overview.............................................................................................................................191
Object Internals....................................................................................................................192
Knowledge Required.....................................................................................................193
Message Protocol.........................................................................................................198
Message Contracts.......................................................................................................201
State Change Notification.............................................................................................203
Object Appearance..............................................................................................................206
Occasions Requiring an Appearance............................................................................207
Object State, Object Constraints..........................................................................................210
Chapter 9: All the World’s aStage................................................................................................212
Overview.............................................................................................................................212
Static Relationships.............................................................................................................214
Is-a-Kind-of Relationship...............................................................................................215
Collaborates-with Relationship......................................................................................216
Situational Relationship.................................................................................................217
Dynamic Relationships........................................................................................................231
Scripts...........................................................................................................................231
Microsoft ObjectThinking
iii
Table of Contents
Chapter 9: All the World’s aStage
Event Dispatching.........................................................................................................234
Constraints...........................................................................................................................237
Self-Evaluating Rules....................................................................................................239
Implementation..............................................................................................................242
Methods........................................................................................................................242
Knowledge Maintenance Objects..................................................................................243
Development at the Speed of Thought................................................................................245
Chapter 10: Wrapping Up..............................................................................................................247
Overview.............................................................................................................................247
Vexations.............................................................................................................................247
The Impedance Mismatch Problem..............................................................................248
A Problem with GUIs.....................................................................................................249
Extensions...........................................................................................................................251
Frameworks..................................................................................................................252
Object-Based Evocative Architecture............................................................................254
Provocation—The Future of Objects....................................................................................256
Bibliography.........................................................................................................................259
Index...............................................................................................................................................271
A..........................................................................................................................................271
Index...............................................................................................................................................274
B..........................................................................................................................................274
Index...............................................................................................................................................276
C.........................................................................................................................................276
Index...............................................................................................................................................280
D.........................................................................................................................................280
Index...............................................................................................................................................283
E..........................................................................................................................................283
Index...............................................................................................................................................284
F..........................................................................................................................................284
Index...............................................................................................................................................286
G.........................................................................................................................................286
Microsoft ObjectThinking
iv
剩余326页未读,继续阅读
资源评论
- edward742017-03-01CLSA Overview中推荐的书,果然值得一读,衷心感谢
- computerwelcome2013-03-18好书,适合面向对象编程人员。
buptrobin
- 粉丝: 2
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功