The Art of Objects: Object-Oriented Design and Architecture (Paperback)

Yun-Tung Lau Ph.D.

  • 出版商: Addison Wesley
  • 出版日期: 2000-10-26
  • 售價: $1,450
  • 貴賓價: 9.5$1,378
  • 語言: 英文
  • 頁數: 384
  • 裝訂: Paperback
  • ISBN: 0201711613
  • ISBN-13: 9780201711615
  • 相關分類: Object-oriented 物件導向
  • 立即出貨(限量) (庫存=2)




A single source for expertise on every leading object-oriented design technique!

  • Patterns, Java, UML, XML, Web application development, and more.
  • Detailed coverage of persistent and distributed objects, with practical introductions to CORBA and IDL.
  • Includes extensive set of practical exercises and sample code derived from real-world projects.
In this book, a leading software architect presents the rock-solid foundations of object design and architecture -- and the art of applying them. The Art of Objects will help analysts, architects, and developers fully leverage today's most important object tools and technologies, including Java, UML, XML, middleware, patterns, and much more. Its real-world case studies, examples, and exercises are designed in a holistic, forward-looking manner, ensuring that whatever technologies go out of fashion, readers will have the object skills they need to succeed. Yun-Tung Lau presents the language-independent fundamentals of object design; then provides a detailed overview of the Unified Modeling Language. Building from the basics, he presents advanced approaches such as object relationship loops, and relationship fission for analyzing complex object structures. The Art of Objects contains extensive coverage of persistent objects, including mapping to relational tables, event processing objects, distributed objects, CORBA, and the Interface Definition Language. It also introduces the latest XML object models.

Yun-Tung Lau is chief engineer at Science Application International Corporation (SAIC). He has extensive experience with large-scale software architecture, design, and development, and has served as chief architect for software projects ranging from engineering simulation to supply chain management, product data management to electronic commerce.

Back to Top

Table Of Contents

Organization of the Book.
Online Resources.
1. Basic Concepts.
The Nature of Objects.
Unified Modeling Language.
UML Notation Basics.
Object Creation and Destruction.
Associations and Links.
Binary Associations and Links.
Ordering and Sorting.
Navigation and Referential Integrity.
Ternary and Higher Order Associations.
Aggregation and Composition.
Servant Classes and Delegation.
Inherited versus Servant Classes.
Polymorphism and Object Substitution.

2. Common Patterns in Static Design.
Collection Managers.
Self-Containing Classes, Hierarchies, and Networks.
Relationship Loops.
Relationship Fission.
Inheritance of Relationship Loops.
Double Loops.
Three-Tier Relationship Loops.
Binary Association Classes.
Implementing Binary Association Classes.
Recursive Association Class.
The Handle-Body Pattern.
Dynamic Schema.
Shared Object Pools.
Object Model for Extensible Markup Language.
XML Basics.
XML Object Models.
The Strengths and Weaknesses of XML.
Case Study: ATM System Software.
Project Description.
State Analysis and Design.
Case Study: Shared Whiteboard.
Case Study: Access Control Lists.

3. Persistent Objects.
Transactions and Database Management Systems.
Object-Oriented Databases.
Database Roots and Extents.
Persistence-Enabled Objects.
Destruction of Persistent Objects.
Schema Evolution.
Relational Databases.
Mapping Persistent Objects to Tables.
Classes and Binary Associations.
Aggregation, Composition, and Servant Classes.
Ternary and Higher Order Associations.
Reducing Ternary Associations to Binary Ones.
Degenerate Ternary Associations.
Mapping Rules Summary.
A Critical Comparison Between Relational and Object-Oriented Databases.
Optimization of Relational Tables.
Optimization of Persistent Objects.
Case Study: ATM System Software.
Case Study: Shared Whiteboard.
Case Study: A Rental Business.
Initial Analysis and Design.
Full Object Design for Multiple Stores.
Detailed Object Designs.
Case Study: Access Control Lists.

4. Advanced Topics in Object Modeling.
Abstract Classes.
Multiple Inheritance.
Inner Classes.
UML Notation Basics for Dynamic Modeling.
Reverse Engineering and Irreducible Patterns.

5. Dynamic Object Modeling Basics.
Use Case Analyses.
Sequence Diagrams.
The Client/Server Model and Distributed Objects.
Interface Definition and Client/Server Development.
The CORBA Standard.
Interface Definition Language.
Statechart Diagrams.
Case Study: ATM System Software.
Case Study: Shared Whiteboard.
Case Study: A Rental Business.
Case Study: Access Control Lists.

6. Common Interface Design Patterns.
Object Wrappers.
Object Adapters.
Object Factories and Managers.
Interfaces as Servant Classes.
Servant Interfaces in Event Processing.
Single Event Pushing and Observers.
Callbacks from Server Objects.
Subscription and Notification.
Relationship Loops with Interfaces.
Inheritance Ladders.
CORBA Objects.
CORBA Client Stubs.
Tactics in Designing Distributed Objects.
Proxy and Surrogate Objects.
Case Study: ATM System Software.
Case Study: Shared Whiteboard.
Message Port — An Infrastructure for a Collaboration Group.
Sequence Diagrams for MessagePort.
Case Study: Access Control Lists.

7. Object-Oriented Architecture.
Notations for Architecture Diagrams.
Procedural Processing Systems.
Client/Server Systems.
“Thin Clients” and Object IDs.
Web Applications Using the MVC Framework.
Layered Systems.
Layering with Servant Objects.
Three-Tier and Multi-Tier Systems.
Clustering and Serializing.
Aggregations and Federations.
Architectural Patterns in UML.
Case Study: ATM System Software.
Case Study: Shared Whiteboard.
The Shared Whiteboard Aggregation.
Image Exchange Formats and Policies.
The Interface and Control Layers.
Synchronization and Related Issues.
Trace Table for Requirements.
Case Study: A Rental Business.
Case Study: The Enterprise JavaBeans Framework.
Static Structures.
Resource Management Strategies.
Dynamic Behaviors of Entity Beans.

Summaries and Notes.
Chapter Summary and Notes.
Notes on CORBA-COM Interoperability.
Case Studies Summary.

Answers to Exercises.
Chapter Exercise Answers.

Appendix A: Quick References for Object Designers.
Appendix B: Sample Code Reference List.
Appendix C: Features of Object-Oriented Languages.
Index. 0201711613T04062001

Back to Top