Skip to Content
Head First Design Patterns, 2nd Edition
book

Head First Design Patterns, 2nd Edition

by Eric Freeman, Elisabeth Robson
December 2020
Beginner
672 pages
15h 24m
English
O'Reilly Media, Inc.
Content preview from Head First Design Patterns, 2nd Edition

Chapter 10. The State of Things: The State Pattern

Images

A little-known fact: the Strategy and State Patterns are twins separated at birth. You’d think they’d live similar lives, but the Strategy Pattern went on to create a wildly successful business around interchangeable algorithms, while State took the perhaps more noble path of helping objects to control their behavior by changing their internal state. As different as their paths became, however, underneath you’ll find almost precisely the same design. How can that be? As you’ll see, Strategy and State have very different intents. First, let’s dig in and see what the State Pattern is all about, and then we’ll return to explore their relationship at the end of the chapter.

Java Breakers

Images

Gumball machines have gone high tech. That’s right, the major manufacturers have found that by putting CPUs into their candy machines, they can increase sales, monitor inventory over the network, and measure customer satisfaction more accurately.

But these manufacturers are gumball machine experts, not software developers, and they’ve asked for your help:

Note

At least that’s their story—we think they just got bored with the circa 1800s technology and needed to find a way to make their jobs more exciting.

Cubicle Conversation

Judy: ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Designing Data-Intensive Applications, 2nd Edition

Designing Data-Intensive Applications, 2nd Edition

Martin Kleppmann, Chris Riccomini
Design Patterns: Elements of Reusable Object-Oriented Software

Design Patterns: Elements of Reusable Object-Oriented Software

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

Publisher Resources

ISBN: 9781492077992Errata PageSupplemental Content