Chapter 17. Developing State Models

The proof of the pudding is in the eating, but not if the eater is a poor judge of pudding.

—Anonymous epigram

Alas, anyone can whip together a state machine. When the whippers are incompetent one will get bad state machines, as the Keyboard example in the Part III road map indicated. The main ingredient of state machine design competence is the right mindset, as discussed in the previous chapter. In this chapter we will discuss a more detailed approach to designing state machines that will help avoid foot-shooting when combined with the right mindset.

Most of the work in state machine design is actually done when one allocates behavior responsibilities to the class. If one religiously applied good OO problem ...

Get Model-Based Development: Applications 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.