Другой подход, когда ваша машина состояний становится громоздкой, состоит в использовании автоматизированного инструмента, посредством которого вы конфигурируете таблицу и позволяете инструменту сгенерировать код машины состояний за вас. Вы можете создать его сами, используя языки, аналогичные Python, но есть также бесплатные инструменты с открытыми исходниками, такие как Libero, на http://www.imatix.com.

Код, управляемый таблицей: гибкость конфигурации

Управляемый таблицей код, с использованием анонимных внутренних классов

Смотрите пример ListPerformance.java в TIJ из Главы 9

Также GreenHouse.java