Object-Oriented Design with UML and Java
Copyright Page
Contents
Preface
Chapter 1. Object Technology
1.1 Background
1.2 Using the UML
1.3 Classes. sets of similar objects
1.4 Tools
1.5 Summary
1.6 Exercises
Chapter 2. Object-Oriented Analysis and Design
2.1 Fundamentals of an OOAD
2.2 Illustration
2.3 Toward design
2.4 UML diagrams
2.5 Class diagrams
2.6 Summary
2.7 Exercises
Chapter 3. Implementing Objects with Java
3.1 Introduction
3.2 Illustration
3.3 Building an application
3.4 Implementing architectural relationships
3.5 Establishing the architecture
3.6 The example application
3.7 Summary
3.8 Exercises
Chapter 4. Case Study: A Library Application
4.1 Specification
4.2 Iteration 1
4.3 Iteration 2
4.4 Iteration 3
4.5 Summary
4.6 Exercises
Chapter 5. Specialization
5.1 Specialization
5.2 Inherited methods
5.3 Redefined methods
5.4 Polymorphism
5.5 Polymorphism at work
5.6 Protected features
5.7 The abstract class
5.8 The interface class
5.9 The interface at work
5.10 Summary
5.11 Exercises
Chapter 6. Case Study: The Library Application Revisited
6.1 Specification
6.2 Iteration 1
6.3 Iteration 2
6.4 Iteration 3
6.5 Summary
6.6 Exercises
Chapter 7. Graphical User Interfaces
7.1 Overview of Swing
7.2 Rebuilding the library case study
7.3 Events
7.4 Menu bar
7.5 Application menus
7.6 Application buttons
7.7 Dialogs
7.8 Summary
7.9 Exercises
Chapter 8. Design Patterns
8.1 Delegation
8.2 Interface
8.3 Iterator
8.4 Adapter
8.5 Singleton
8.6 Visitor
8.7 Observer
8.8 Template method
8.9 Abstract factory
8.10 Decorator
8.11 Summary
8.12 Exercises
Chapter 9. Case Study: A Final Review
9.1 Refactoring
9.2 Iteration 1
9.3 Iteration 2
9.4 Iteration 3
9.5 Iteration 4
9.6 Summary
9.7 And finally
9.8 Exercises
Bibliography
Appendix A. Setting up the Environment
Appendix B. ROME
Appendix C. Package textio
Appendix D. UML Notation and Java Bindings
Appendix E. The Java Collections Framework
Appendix F. Programming with Java
Appendix G. Object-Oriented Programming with Java
Appendix H. Procedural Code in Java
Index