Java Program Design: Principles, Polymorphism, and Patterns
Book information
Description
Get a grounding in polymorphism and other fundamental aspects of object-oriented program design and implementation, and learn a subset of design patterns that any practicing Java professional simply must know in today’s job climate. Java Program Design presents program design principles to help practicing programmers up their game and remain relevant in the face of changing trends and an evolving language. The book enhances the traditional design patterns with Java's new functional programming features, such as functional interfaces and lambda expressions. The result is a fresh treatment of design patterns that expands their power and applicability, and reflects current best practice. The book examines some well-designed classes from the Java class library, using them to illustrate the various object-oriented principles and patterns under discussion. Not only does this approach provide good, practical examples, but you will learn useful library classes you might not otherwise know about. The design of a simplified banking program is introduced in chapter 1 in a non-object-oriented incarnation and the example is carried through all chapters. You can see the object orientation develop as various design principles are progressively applied throughout the book to produce a refined, fully object-oriented version of the program in the final chapter. What You'll Learn • Create well-designed programs, and identify and improve poorly-designed ones • Build a professional-level understanding of polymorphism and its use in Java interfaces and class hierarchies • Apply classic design patterns to Java programming problems while respecting the modern features of the Java language • Take advantage of classes from the Java library to facilitate the implementation of design patterns in your programs Who This Book Is For Java programmers who are comfortable writing non-object-oriented code and want a guided immersion into the world of object-oriented Java, and intermediate programmers interested in strengthening their foundational knowledge and taking their object-oriented skills to the next level. Even advanced programmers will discover interesting examples and insights in each chapter. Front Matter ....Pages i-xvii Modular Software Design (Edward Sciore)....Pages 1-46 Polymorphism (Edward Sciore)....Pages 47-85 Class Hierarchies (Edward Sciore)....Pages 87-126 Strategies (Edward Sciore)....Pages 127-162 Encapsulating Object Creation (Edward Sciore)....Pages 163-199 Iterables and Iteration (Edward Sciore)....Pages 201-235 Adapters (Edward Sciore)....Pages 237-270 Decorators (Edward Sciore)....Pages 271-313 Composites (Edward Sciore)....Pages 315-351 Observers (Edward Sciore)....Pages 353-388 Model, View, and Controller (Edward Sciore)....Pages 389-443 Back Matter ....Pages 445-456
Similar books
Design Patterns mit Java: Eine Einführung
2021 · PDF
Head First. Паттерны проектирования. Обновленное юбилейное издание
2018 · PDF
Understanding Oracle APEX 20 Application Development : Think Like an Application Express Developer
EPUB
Understanding Oracle APEX 20 Application Development: Think Like an Application Express Developer
2020 · PDF
Database Design and Implementation (Java, JDBC).
2020 · PDF
Understanding Oracle APEX 5 Application Development, 2nd Edition
2015 · PDF
Database management: a systems approach using Java [course notes]
MySQL® Notes for Professionals book
2018 · PDF