Fundamentals of Object-Oriented Design in UML
Meilir Page-Jones
- 出版商: Addison-Wesley Professional
- 出版日期: 1999-11-13
- 售價: $1,817
- 貴賓價: 9.5 折 $1,726
- 語言: 英文
- 頁數: 480
- 裝訂: Paperback
- ISBN: 020169946X
- ISBN-13: 9780201699463
-
相關分類:
UML、Object-oriented 物件導向
下單後立即進貨 (約2~4週)
買這商品的人也買了...
-
$2,301$2,186Data Mining: Concepts and Techniques
-
$399
The Art of Objects: Object-Oriented Design and Architecture (Paperback)
-
$2,214$2,103Cisco BGP-4 Command and Configuration Handbook
-
$1,050$998Operating System Concepts, 6/e
-
$990$970Introduction to Algorithms, 2/e
-
$350$280Excel 2002 實力養成暨評量
-
$920$736Thinking in Java 中文版 (Thinking in Java, 2/e)
-
$880$695LPI Linux 資格檢定 (LPI Linux Certification in a Nutshell)
-
$1,300$1,235Computer Architecture: A Quantitative Approach, 3/e(精裝本)
-
$540$486近代密碼學及其應用 (Contemporary Cryptography and It's Applications)
-
$780$741作業系統概念 (Operating System Concepts, 6/e Windows XP Update)
-
$450$351Java 的真相-避開學習 Java 的陷阱與迷思
-
$750$638Java 完美經典優質學習篇
-
$720$562深入淺出 JBuilder 程式設計實作(JBuilder 9.0/8.0/7.0 適用) (Charlie Calvert's Learn Jbuilder)
-
$780$624Java 2 教學手冊 SDK 1.4版 (Beginning Java 2 SDK 1.4 Edition)
-
$720$576重構─改善既有程式的設計
-
$560$476鳥哥的 Linux 私房菜─基礎學習篇增訂版
-
$450$360Linux 防火牆:iptables
-
$720$576手機、PDA 程式設計入門─Java 手機、Pocket PC、Palm OS、Symbian OS 程式設計
-
$720$612JSP 動態網頁入門實務
-
$860$731Inside VCL-VCL 架構剖析
-
$780$663SCWCD 認證專家應考指南
-
$550$468osCommerce 購物網站架設實戰
-
$390$304Web 配色事典﹝活用網頁安全色﹞
-
$2,350$2,233Visual Studio Tools for Office: Using C# with Excel, Word, Outlook, and InfoPath (Paperback)
商品描述
Table Of Contents
I. INTRODUCTION.
1. What does it mean to be object oriented, anyway?
2. Object orientation--who ordered that?
Encapsulation.
Information / implementation hiding.
State retention.
Object identity.
Messages.
Classes.
Inheritance.
Polymorphism.
Genericity.
Information / implementation hiding.
State retention.
Object identity.
Messages.
Message structure.
Message arguments.
The roles of objects in messages.
Types of messages.
Message arguments.
The roles of objects in messages.
Types of messages.
Classes.
Inheritance.
Polymorphism.
Genericity.
2. Object orientation--who ordered that?
Where did object orientation come from?
Object orientation in a social context.
Object orientation as an engineering discipline.
What's object orientation good for?
Larry Constantine.
O.J. Dahl and K. Nygaard.
Alan Kay, Adele Goldberg and others.
Edsger Dijkstra.
Barbara Liskov.
David Parnas.
Jean Ichbiah and others.
Bjarne Stroustrup.
Bertrand Meyer.
0 Grady Booch, Ivar Jacobson and Jim Rumbaugh.
O.J. Dahl and K. Nygaard.
Alan Kay, Adele Goldberg and others.
Edsger Dijkstra.
Barbara Liskov.
David Parnas.
Jean Ichbiah and others.
Bjarne Stroustrup.
Bertrand Meyer.
0 Grady Booch, Ivar Jacobson and Jim Rumbaugh.
Object orientation in a social context.
The history of the mainstream.
To the barricades: the object-oriented revolutionaries.
Forward to the past: the object-oriented reactionaries.
Enter the evolutionists (stage middle).
To the barricades: the object-oriented revolutionaries.
Forward to the past: the object-oriented reactionaries.
Enter the evolutionists (stage middle).
Object orientation as an engineering discipline.
What's object orientation good for?
Analyzing users' requirements.
Designing software.
Constructing software.
Maintaining software.
Using software.
Managing software projects.
Designing software.
Constructing software.
Maintaining software.
Using software.
Managing software projects.
II. UML NOTATION.
3. The basic notation for classes, attributes and operations.
4. Class diagrams.
5. Object-interaction diagrams.
6. State diagrams.
7. Additional design diagrams.
The class symbol.
Notation for attributes.
Notation for operations.
Overloaded operations.
Public, protected and private features.
Class attributes and operations.
Abstract classes and features.
The utility.
Parameterized classes.
Notation for attributes.
Notation for operations.
Overloaded operations.
Public, protected and private features.
Class attributes and operations.
Abstract classes and features.
The utility.
Parameterized classes.
4. Class diagrams.
The generalization construct.
The association construct.
"Whole / part" associations.
Single inheritance.
Multiple inheritance.
Subclass partitioning.
Partitioning discriminators.
Multiple inheritance.
Subclass partitioning.
Partitioning discriminators.
The association construct.
The basic UML notation for associations.
Associations depicted as classes.
Higher-order associations.
Navigability of associations.
Associations depicted as classes.
Higher-order associations.
Navigability of associations.
"Whole / part" associations.
Composition.
Aggregation.
Aggregation.
5. Object-interaction diagrams.
The collaboration diagram.
The sequence diagram.
Asynchronous messages and concurrent execution.
Depicting a message.
Polymorphism in the collaboration diagram.
Iterated messages.
Use of self in messages.
Polymorphism in the collaboration diagram.
Iterated messages.
Use of self in messages.
The sequence diagram.
Asynchronous messages and concurrent execution.
Depicting an asynchronous message.
The callback mechanism.
Asynchronous messages with priority.
Depicting a broadcast (non-targeted) message.
The callback mechanism.
Asynchronous messages with priority.
Depicting a broadcast (non-targeted) message.
6. State diagrams.
Basic state diagrams.
Nested states.
Concurrent states and synchronization.
Transient states from message-result arguments.
Continuously variable attributes.
Nested states.
Concurrent states and synchronization.
Transient states from message-result arguments.
Continuously variable attributes.
7. Additional design diagrams.
Depicting system architecture.
Depicting the human interface.
Packages.
Deployment diagrams for hardware components.
Deployment diagrams for software components.
Deployment diagrams for hardware components.
Deployment diagrams for software components.
Depicting the human interface.
The window-layout diagram.
The window-navigation diagram.
A brief digression: what's object-oriented about a GUI?
The window-navigation diagram.
A brief digression: what's object-oriented about a GUI?
III. FUNDAMENTAL DESIGN PRINCIPLES.
8. Encapsulation and connascence.
9. Domains, encumbrance and cohesion.
10. State space and behavior.
11. Principles of robust class hierarchies.
12. The perils of inheritance and polymorphism.
13. Organizing features.
14. Quality of a class interface.
15. Development of an object-oriented component.
Appendices.
Appendix A Checklist for an object-oriented design walkthrough.
Appendix B The object-oriented design owner's manual.
Bibliography.
Glossary.
Index. 020169946XT04062001
Encapsulation structure.
Connascence.
Levels of encapsulation.
Design criteria governing interacting levels of encapsulation.
Design criteria governing interacting levels of encapsulation.
Connascence.
Varieties of connascence.
Contranascence.
Connascence and encapsulation boundaries.
Connascence and maintainability.
Connascence abuses in object-oriented systems.
Contranascence.
Connascence and encapsulation boundaries.
Connascence and maintainability.
Connascence abuses in object-oriented systems.
9. Domains, encumbrance and cohesion.
Domains of object classes.
Encumbrance.
Class cohesion: a class and its features.
The foundation domain.
The architectural domain.
The business domain.
The application domain.
The source of classes in each domain.
The architectural domain.
The business domain.
The application domain.
The source of classes in each domain.
Encumbrance.
Definition of encumbrance.
The use of encumbrance.
The Law of Demeter.
The use of encumbrance.
The Law of Demeter.
Class cohesion: a class and its features.
Mixed-instance cohesion.
Mixed-domain cohesion.
Mixed-role cohesion.
Mixed-domain cohesion.
Mixed-role cohesion.
10. State space and behavior.
State-space and behavior of a class.
The state-space of a subclass.
The behavior of a subclass.
The class invariant as a restriction on a state-space.
Preconditions and postconditions.
The state-space of a subclass.
The behavior of a subclass.
The class invariant as a restriction on a state-space.
Preconditions and postconditions.
11. Principles of robust class hierarchies.
The principle of type conformance.
Subclasses as subtypes.
The principle of closed behavior.
Subclasses as subtypes.
Conformance: the principles of contravariance and covariance.
An example of contravariance and covariance.
A graphic illustration of contravariance and covariance.
A summary of the requirements for type conformance.
An example of contravariance and covariance.
A graphic illustration of contravariance and covariance.
A summary of the requirements for type conformance.
The principle of closed behavior.
12. The perils of inheritance and polymorphism.
Abuses of inheritance.
The danger of polymorphism.
Mistaken aggregates.
Inverted hierarchy.
Confusing class and instance.
Misapplying is a.
Inverted hierarchy.
Confusing class and instance.
Misapplying is a.
The danger of polymorphism.
Polymorphism of operations.
Polymorphism of variables.
Polymorphism in messages.
Polymorphism and genericity.
Polymorphism of variables.
Polymorphism in messages.
Polymorphism and genericity.
13. Organizing features.
Mix-in classes.
Rings of operations.
A business example.
A graphics example.
A graphics example.
Rings of operations.
14. Quality of a class interface.
State support in a class interface.
Behavior support in a class interface.
Operation cohesion in a class interface.
Behavior support in a class interface.
Operation cohesion in a class interface.
15. Development of an object-oriented component.
Appendices.
Appendix A Checklist for an object-oriented design walkthrough.
Appendix B The object-oriented design owner's manual.
Bibliography.
Glossary.
Index. 020169946XT04062001
