Chapter 28. Oh No! Undo!

Everyone thinks that if you don’t plan ahead—and code ahead—for things like "undo," you’re doomed. Are we doomed?

The Final Exam

One of the biggest concerns with incremental development, such as we’ve been practicing in this book, is that there may be "cross-cutting" concerns that the design will not easily accommodate, resulting in a lot more work than if one had done "more" design. A favorite example, first raised to me by Gary Pollice of Rational, is "What if you’re writing an editor, and you don’t plan for Undo, and then they want it?"

Well, I won’t lie to you, Chet and I knew we were going to ask for Undo at the end of this exercise. But we have tried hard not to design for it or plan for it. You’ve been along with us, ...

Get Extreme Programming Adventures in C# 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.