
Résumé
Java™ Design relies on a combination of best practices and best-of-breed technologies to create a clear and concise guide to building high-quality, lasting software designs. In particular, the author provides unique insight into using the Unified Modeling Language (UML) to develop Java applications.
The first half of the book focuses on the software process and how UML, Java technology, and object-oriented programming can be used effectively. The advantages of each technology are enumerated, highlighting common principles. Also included are in-depth discussions of design patterns, the Unified Process, and Extreme Programming.
The second half of the book describes how these complementary technologies can be used together as a system of checks and balances to ensure successful creation of high-quality software. You'll also find details on modeling strategies, a phased approach to adopting each of the technologies outlined, and the design of subsystems.
Key topics include:
- Object-oriented principles and patterns
- UML and the role of modeling
- UML and the software process, including best practices and lifecycle development
- Modeling strategies and requirements
- Behavioral modeling
- Architectural modeling
- Designing subsystems
- Refactoring
Armed with a fresh perception of cdesign tools, this book will give you a deeper understanding of how to design cleaner Java applications using UML. Learn how you can expand your developer's toolkit using existing technologies in new ways—and create better software.
ContentsPreface.
Introduction.
1. OO Principles and Patterns.
Principles, Patterns, and the OO Paradigm.
Class Principles.
Liskov Substitution Principle (LSP).
Dependency Inversion Principle (DIP).
Interface Segregation Principle.
Composite Reuse Principle (CRP).
Principle of Least Knowledge (PLK).
Package Principles.
Release Reuse Equivalency Principle (REP).
Common Closure Principle (CCP).
Common Reuse Principle (CRP).
Acyclic Dependencies Principle (ADP).
Stable Dependencies Principle (SDP).
Stable Abstractions Principle (SAP).
Patterns.
Visitor.
Layers.
Conclusion.
2. Introduction to the UML.
UML Defined.
Origin.
Role of Modeling.
Complexity of Architecture.
The Remedy.
Benefits.
Conclusion.
3. Fundamental UML.
Models and Views.
Diagrams.
Views.
Core Diagrams.
Structural Diagrams.
Fundamental Elements.
JavaIndependent Entities.
Java Dependent Entities.
Diagram Introduction.
Class Diagram.
Package Diagram.
Conclusion.
4. UML and Software Process.
Process Defined.
Best Practices.
Architecture Centric.
Iterative.
Refactoring.
Visual Modeling.
Simple Prototypes.
Development Lifecycle and UML.
Analysis & Design.
Construction.
Test.
Deployment.
The Full Lifecycle.
Conclusion.
5. Modeling Strategies.
Integration Goals.
Tool Approach.
Integration Factors.
Software Process.
Object Oriented Experience.
Technological.
Modeling Strategies.
Integration Strategy.
Conclusion.
6. Requirements Modeling.
Notation.
Use Case.
Relationships.
Use Case Diagram.
Stereotypes.
Requirements Modeling.
Use Case Diagrams.
Use Case Specifications.
Additional Elements.
Conclusion.
7. Problem Analysis.
Notation.
Association.
Package.
Dependency.
Stereotype.
Collaboration.
Realization.
Identifying Initial Concepts.
Software Specification.
Entity.
Control.
Establishing Architecture.
Allocating Classes.
Conclusion.
8. Behavioral Modeling.
Notation.
Message.
Sequence Diagrams.
Collaboration Diagrams.
Use Case Realizations.
Responsibility Allocation.
Controllers as Mediators.
Managing Collections.
Accessor and Mutator Methods.
Additional Diagrams.
Simple Prototypes.
Model Structure.
Conclusion.
9. Structural Modeling.
Notation.
Structural Elements.
Relationships.
Coupling and Cohesion.
Useful Class Diagrams.
Interface Diagram.
Implementation Diagrams.
View of Participating Classes (VOPC).
Identifying Structure.
Factories.
Collections.
Structural Notes.
Model Structure.
Conclusion.
10. Architectural Modeling.
Defining Architecture.
Establishing Architecture.
Architectural Mechanisms.
Observing.
Model-View-Controller.
Partitions.
Views of Architecture.
Frameworks and Class Libraries.
Class Libraries.
Component Architectures.
Components and UML.
Component Sample.
Conclusion.
11. Designing Subsystems.
Defining Subsystems.
Subsystems in Java.
Subsystem Specification.
Subsystem Identification.
Subsystem Development.
Subsystems as Frameworks.
Conclusion.
Bibliography.
Index.
Caractéristiques techniques
PAPIER | |
Éditeur(s) | Addison Wesley |
Auteur(s) | Kirk Knoernschild |
Parution | 01/02/2002 |
Nb. de pages | 278 |
Format | 18,6 x 23,4 |
Couverture | Broché |
Poids | 600g |
Intérieur | Noir et Blanc |
EAN13 | 9780201750447 |
Avantages Eyrolles.com
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
- Les meilleures ventes en Informatique
- Les meilleures ventes en Construction
- Les meilleures ventes en Entreprise & Droit
- Les meilleures ventes en Sciences
- Les meilleures ventes en Littérature
- Les meilleures ventes en Arts & Loisirs
- Les meilleures ventes en Vie pratique
- Les meilleures ventes en Voyage et Tourisme
- Les meilleures ventes en BD et Jeunesse