Object-Oriented Software Development using Java: Principles, Patterns, and Frameworks, Second Edition, helps readers develop skills in designing software - particularly in writing object-oriented programs using Java. It provides a broad coverage of object-oriented technology, including object-oriented modeling using the Unified Modeling Language (UML), object-oriented design using design patterns, and object-oriented programming using Java.