The Object-Oriented Thought ProcessThe Object-Oriented Thought Process Third Edition
Matt Weisfeld
An introduction to object-oriented concepts for developers looking to master modern application practices.
Object-oriented programming (OOP) is the foundation of modern programming languages, including C++, Java, C#, and Visual Basic .NET. By designing with objects rather than treating the code and data as separate entities, OOP allows objects to fully utilize other objects’ services as well as inherit their functionality. OOP promotes code portability and reuse, but requires a shift in thinking to be fully understood. Before jumping into the world of object-oriented programming languages, you must first master The Object-Oriented Thought Process.
Written by a developer for developers who want to make the leap to object-oriented technologies as well as managers who simply want to understand what they are managing, The Object-Oriented Thought Process provides a solution-oriented approach to object-oriented programming. Readers will learn to understand object-oriented design with inheritance or composition, object aggregation and association, and the difference between interfaces and implementations. Readers will also become more efficient and better thinkers in terms of object-oriented development.
This revised edition focuses on interoperability across various technologies, primarily using XML as the communication mechanism. A more detailed focus is placed on how business objects operate over networks, including client/server architectures and web services.
“Programmers who aim to create high quality software–as all programmers should–must learn the varied subtleties of the familiar yet not so familiar beasts called objects and classes. Doing so entails careful study of books such as Matt Weisfeld’s The Object-Oriented Thought Process.” –Bill McCarty, author of Java Distributed Objects, and Object-Oriented Design in Java
Matt Weisfeld is an associate professor in business and technology at Cuyahoga Community College in Cleveland, Ohio. He has more than 20 years of experience as a professional software developer, project manager, and corporate trainer using C++, Smalltalk, .NET, and Java. He holds a BS in systems analysis, an MS in computer science, and an MBA in project management. Weisfeld has published many articles in major computer trade magazines and professional journals. |
Contents
Contents at a Glance Introduction | |
What Exactly Is a Class? | |
Mastering Inheritance and Composition | |
How to Think in Terms of Objects | |
Introduction to ObjectOriented Concepts 2 How to Think in Terms of Objects 3 Advanced ObjectOriented Concepts | |
Error Handling | |
The Concept of Scope | |
Inheritance | |
Conclusion | |
Designing with Interfaces | |
An EBusiness Example | |
Building Objects | |
Creating Object Models with | |
XML | |
DTD | |
Serialization and Relational Databases | |
The Anatomy of a Class | |
Class Design Guidelines | |
Designing with Objects | |
References | |
The Anatomy of a Class | |
Advanced ObjectOriented Concepts | |
Mastering Inheritance and Composition | |
Designing with Interfaces and Abstract Classes | |
Why Encapsulation Is Fundamental to | |
in the Serialization Process | |
Loading the Driver | |
Conclusion | |
Objects and the Internet | |
Distributed Objects and the Enterprise | |
Objects and ClientServer Applications | |
Design Patterns | |
Design Patterns | |
Index | |