Book description
NEW LANGUAGE VISUALIZES PROGRAM ABSTRACTIONS CLEARLY AND PRECISELY
Popular software modelling notations visualize implementation minutiae but fail to scale, to capture design abstractions, and to deliver effective tool support. Tailored to overcome these limitations, Codecharts can elegantly model roadmaps and blueprints for Java, C++, and C# programs of any size clearly, precisely, and at any level of abstraction. More practically, significant productivity gains for programmers using tools supporting Codecharts have been demonstrated in controlled experiments.
Hundreds of figures and examples in this book illustrate how Codecharts are used to:
Visualize the building-blocks of object-oriented design
Create bird's-eye roadmaps of large programs with minimal symbols and no clutter
Model blueprints of patterns, frameworks, and other design decisions
Be exactly sure what diagrams claim about programs and reason rigorously about them
Tools supporting Codecharts are also shown here to:
Recover design from plain Java and visualize the program's roadmap
Verify conformance to design decision with a click of a button
This classroom-tested book includes two main parts:
Practice (Part I) offers experienced programmers, software designers and software engineering students practical tools for representing and communicating object-oriented design. It demonstrates how to model programs, patterns, libraries, and frameworks using examples from JDK, Java 3D, JUnit, JDOM, Enterprise JavaBeans, and the Composite, Iterator, Factory Method, Abstract Factory, and Proxy design patterns.
Theory (Part II) offers a mathematical foundation for Codecharts to graduate students and researchers studying software design, modelling, specification, and verification. It defines a formal semantics and a satisfies relation for design verification, and uses them to reason about the relations between patterns and programs (e.g., "java.awt implements Composite" and "Factory Method is an abstraction of Iterator").
Table of contents
- Cover Page
- Title Page
- Copyright
- Dedication
- Contents
- Preface
- Acknowledgments
- Guide to the Reader
- Codecharts
- Propositions
- Prologue
- Chapter 1: Motivation
- Chapter 2: Design Description Languages
- Chapter 3: An Overview of Codecharts
- Chapter 4: UML Versus Codecharts
- Chapter 5: Historical Notes
-
Part I: Practice
- Chapter 6: Modelling Small Programs
-
Chapter 7: Modelling Large Programs
- 7.1 MODELLING SETS OF CLASSES
- 7.2 MODELLING TOTAL RELATIONS BETWEEN SETS
- 7.3 MODELLING SETS OF METHODS (CLANS)
- 7.4 *MODELLING ISOMORPHIC RELATIONS
- 7.5 MODELLING SETS OF METHODS (TRIBES)
- 7.6 MODELLING CLASS HIERARCHIES
- 7.7 MODELLING METHODS IN HIERARCHIES
- 7.8 MODELLING PROPERTIES OF SETS
- 7.9 * CASE STUDY: TOTAL VERSUS ISOMORPHIC
- 7.10 CASE STUDY: JDOM
- 7.11 CASE STUDY: JAVA 3D
- Chapter 8: * Modelling Industry-Scale Programs
- Chapter 9: Modelling Design Motifs
- Chapter 10: Modelling Application Frameworks
- Chapter 11: Modelling Design Patterns
- Chapter 12: Modelling Early Design Revisited
- Chapter 13: * Advanced Modelling Techniques
- Part II: Theory
- Appendix I: The Gang of Four Companion
- Appendix II: Formal Definitions
- Appendix III: UML Quick Reference
- References
- Index
Product information
- Title: Codecharts: Roadmaps and blueprints for object-oriented programs
- Author(s):
- Release date: May 2011
- Publisher(s): Wiley
- ISBN: 9780470626948
You might also like
audiobook
Transformed
Help transform your business and innovate like the world's top tech companies! Transformed: Moving to the …
book
Masterminds of Programming
Masterminds of Programming features exclusive interviews with the creators of several historic and highly influential programming …
book
Object-Oriented Construction Handbook
Successful businesses and organizations are continually looking for ways to improve service and customer satisfaction in …
book
Object-Oriented Thought Process, The, Second Edition
A new edition of this title is available, ISBN-10: 0672330164 ISBN-13: 9780672330162 The Object-Oriented Thought Process, …