Essence of Object-Oriented Programming with Java™ and UML, The
Addison Wesley (Verlag)
978-0-201-73410-2 (ISBN)
This book can give any Java developer -- regardless of experience -- the firm foundation they need to achieve the full benefits of object-oriented programming. The book combines practical introductions to UML, object-oriented methodologies, design patterns, libraries, and frameworks -- giving developers all the skills they need to begin writing robust object-oriented programs -- and to tackle the entire field of object-oriented development. Leading developer Bruce Wampler begins with a brief introduction to objects and their benefits; then introduces the fundamental concepts of object orientation and shows how they can be implemented in Java -- starting with the basics, and moving on to advanced topics such as object lifetime and copies of objects. He moves on to Object-Oriented Analysis and Design, introducing the essential concepts at the heart of every methodology. Next, he presents the essence of today's leading techniques for building effective object-oriented Java systems -- including design patterns, refactoring, and more. Wampler concludes by drawing on his decades of development experience to share powerful personal guidelines for creating more effective software. For all application developers who know at least the basics of Java, and are seeking to strengthen their object-oriented programming skills.
Bruce E. Wampler, founder and CEO of Object Central, was a pioneer in developing spelling and grammar checking software for personal computers, and the co-founder of Reference Software International, which was later acquired by WordPerfect. During his extensive career, he has worked at Sandia National Laboratory and taught at the University of New Mexico. He has also developed and delivered many successful, real-world applications, and several widely used open source object-oriented programming tools. 0201734109AB10122001
(NOTE: Most chapters conclude with a Summary.)
Preface.
Acknowlegements.
1. Objects, UML, and Java.
Object Orientation.
Object-Oriented Languages.
Object-Oriented Design and the UML.
The Payoff of Objects.
2. The Essence of Objects.
What Is an Object-Oriented System?
Fundamental Properties of an Object-Oriented System.
Abstraction with Objects.
Encapsulated Classes.
Communication via Messages.
Object Lifetime.
Class Hierarchies.
Polymorphism.
An Example—Putting it All Together.
Other OO Concepts.
Abstract Classes.
Visibility of Methods.
Class versus Instance.
Accessing Objects.
A Low-Level View of Objects.
Resources.
3. Objects in Java.
Defining Classes in Java.
Visibility.
Inheritance.
Association, Aggregation, and Composition.
Java Interfaces.
Object Lifetime in Java.
Constructors.
Garbage Collection.
Memory Leaks.
Class versus Instance Methods and Attributes.
Copies of Objects.
Messages.
Resources.
4. Object-Oriented Analysis and Design.
Software Methodologies.
The Elements of a Software Project 84
The Essence of Object-Oriented Analysis.
Object Discovery.
Evaluate Candidate Objects.
Determine Object Hierarchies.
Discover Object Attributes.
Discover Object Operations.
The Essence of Object-Oriented Design.
Some Design Guidelines.
Get the Big Picture.
Encapsulation.
Designing Classes.
Inheritance.
General Guidelines.
The Build and Release Phases.
Building the Software.
Releasing the Software.
More on the UML.
Resources.
5. Object-Oriented Graphical User Interfaces with Swing.
Graphical User Interfaces.
A Typical Application.
Dialog Boxes.
Events.
A Brief Introduction to Swing.
MVC: Model, View, Controller.
MVC with Java.
A Small Swing MVC GUI Framework.
A Simple Application Based on Wmvc.
UML Sequence Diagram for Thermometer.
Resources.
6. A Case Study in Java.
Analysis of MovieCat.
Movie Class.
MovieModel Class. View Classes.
Putting It All Together.
Implementation of MovieCat.
Design of MovieCat.
MovieCat Class.
Movie Class.
MovieModel Class.
MainView Class.
MovieListView Class.
MovieItemView Class.
MovieEditor Class.
Movie Helper Classes.
Review.
7. Design Patterns.
What are Design Patterns?
using Design Patterns.
Designing Pattern Description Templates.
The Gang of Four Patterns.
Example Design Patterns Used by Wmvc and MovieCat.
Observer Pattern.
Observer Pattern in Wmvc.
Command Pattern in Wmvc.
Other Patterns Used in Wmvc and MovieCat.
Resources.
8. Refactoring.
What Is Refactoring?
The Basic Refactoring Process.
When do You Refactor?
Code Smells.
When Not to Refactor.
Some Refactorings.
Refactoring Categories.
Some Refactorings.
Refactoring Categories.
Some Specific Refactorings.
Resources.
9. Software Development Methodologies.
Methodologies for Large Scale Projects.
Overview of the Unified Process
Basic Concepts.
Agile Methodologies for Small Projects.
Agile Alliance.
Extreme Programming.
DSDM.
Crystal/Adaptive Software Development.
Source Development.
Open Source Development.
Open Source Is Distributed Development
Resources.
10. Software Tools for Object-Oriented Development.
GUIs versus Consoles.
Characteristics of a Good Editor.
Three Types of Editors.
Emacs.
Integrated Development Environments.
VIDE.
Borland JBuilder.
Sun Forte.
Another IDE.
Source-Code Control.
CASE, Modeling, and UML Tools.
ArgoUML.
MagicDraw.
Rational Software.
TogetherSoft.
Other UML Tools.
11. Programming—A Personal Perspective.
Programming.
Your Code Never Dies.
Programming with Style.
Know What You are Doing.
Write Practice Programs.
Practical Incremental Programming.
The Tools Matter.
Objects Rally Help.
Testing.
Debugging.
Don't Reinvent the Wheel.
Sometimes It Is Better to Do It Yourself.
You Can Get Ideas Any Time.
Get a Life.
A Plan Matters.
The Tools.
Your Editor Really Matters.
Know About the Time-Tested Tools.
Know About the Latest Tools.
Tools Go Away.
The Work Environment.
A Happy Programmer Is a Productive Programmer.
Physical Environment.
Flexibility.
40 Hours.
The Team.
Marketing Matters.
Keep Up-to-Date.
Share the Struggle.
Let Programmers Help Make Policy.
Let Your Boss Know What You Need.
The Reference Software Story.
Programming Resources.
Use the Web.
Watch Out for the Web.
Use Open Source if You Can.
Other Programmers.
Web Sites.
12. What Next?
Object Orientation.
Java.
More Terms You Need to Know.
Distributed Computing Terms.
Java-Related Terms from Sun.
Other Terms.
Glossary.
Index. 0201734109T12052001
Erscheint lt. Verlag | 9.1.2002 |
---|---|
Verlagsort | Harlow |
Sprache | englisch |
Maße | 160 x 189 mm |
Gewicht | 530 g |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► Java |
Mathematik / Informatik ► Informatik ► Web / Internet | |
ISBN-10 | 0-201-73410-9 / 0201734109 |
ISBN-13 | 978-0-201-73410-2 / 9780201734102 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich