* Introduces object-oriented fundamentals critical to designing software and shows how to implement design techniques
* Horstmann's clear, hands-on presentation and outstanding writing style help readers to better understand the material
* Useful sidebars cover relevant data structures
* C++ notes throughout the book illustrate object-oriented programming concepts that are not available with Java
* An online UML editor (designed by the author) allows readers to create and test UML code
* Also available from Cay Horstmann, the highly successful Computing Concepts with Java Essentials, Third Edition (0-471-24371-X); Computing Concepts with C++ Essentials, Third Edition (0-471-16437-2), and Big Java (0-471-40248-6)
This hands-on-guide-written by one of the most successful authors in programming-makes design patterns and principles accessible to everyone! Drawing from his extensive experience as a programmer, consultant and teacher, Horstmann introduces object-oriented design principles, and gives you a roadmap for applying these principles and techniques in your own designs.
- Each topic is illustrated with a high-interest example that introduces you to user interface programming and the full range of Java language features. As you build your programming skills, you will also learn good design practice.
- This book uses Java as its implementation language, and also covers additional OOD strat egies that are available in C++ and other object-oriented languages.
- The book includes a crash course in Java, covering all the basic language constructs for anyone not familiar with the language.
- Horstmann integrates the latest and most effective tools such as BlueJ, javadoc, and JUnit, as well as other experimental tools.
- The Capstone chapter introduces design principles and shows you how to create an easy-to-use UML diagram editor.
- The guide will reach you important skills, including:
- using UML for modeling
- unit testing and programming by contract
- programming GUI applications
- understanding classical design patterns
- using and designing frameworks