Chapter 8. Expanding Our Horizons


In previous chapters, I discussed three fundamental concepts of object-oriented design: objects, encapsulation, and abstract classes. How a designer views these concepts is important. Unfortunately, the traditional ways are very limiting.

In this chapter, I step back and reflect on topics discussed earlier in the book and introduce some new ones. My intent is to describe a fresh way of seeing object-oriented design, a perspective that comes from understanding design patterns. Then I describe the essential features of high-quality code. These features are emphasized by proponents of agile coding methods (such as eXtreme programming and test-driven development). Interestingly, ...

Get Design Patterns Explained: A New Perspective on Object-Oriented Design, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.