"Interface Oriented Design" focuses on an important, but often neglected, aspect of object-oriented design. You'll learn by pragmatic example how to create effective designs composed of interfaces to objects, components and services. You'll see techniques for breaking down solutions into interfaces and then determining appropriate implementation of those interfaces to create a well structured, robust, working program. "Interface Oriented Design" explores how to develop robust, reliable software as a collection of interfaces that interact with each other. You'll learn what polymorphism and encapsulation really mean, and how to use these ideas more effectively. See how to create better interfaces using agile development techniques, and learn the subtle differences between implementing an interface and inheriting an implementation. Take a fresh, modern view of Design By Contract and class responsibilities. Understand the basis of a service-oriented architecture, including stateful versus stateless interfaces, procedural versus document models, and synchronous versus asynchronous invocations.
Learn about the most useful patterns, including Proxy, Facade, Adapter, and Factory, as well categories of interfaces including service providers, information holders, and external world interfaces. If you want to be a more effective programmer and create better software, you need "Interface Oriented Design."
- ISBN10 0976694050
- ISBN13 9780976694052
- Publish Date 22 August 2006
- Publish Status Out of Print
- Out of Print 28 October 2014
- Publish Country US
- Imprint The Pragmatic Programmers
- Format Paperback
- Pages 240
- Language English