В настоящее время я работаю над созданием API из специального корпоративного решения, и я застрял в процессе создания общего и выразительного класса для обработки состояния операций в связанных классах.
В двух словах, я хочу знать, какие стандарты (или лучшие практики) по разработке обработчика состояния. Чего я хочу добиться, так это того, чтобы методы и классы, принадлежащие общему «модулю», возвращали и обрабатывали сообщения о состоянии, принадлежащие определенной структуре состояния, поэтому различные сообщения о состоянии не зависят от реализации.
Возможное решение будет:
- Создайте класс состояния в модуле, который определяет ряд номеров состояний как константы
- Класс Status будет управлять только этими определенными номерами статуса и будет определять сообщения о статусе для каждого из них.
- Методы модуля, требующие обработки статуса, возвращают экземпляр Status, который обрабатывается на более высоких уровнях модуля и не жестко закодирован в каждом методе.
Есть предложения для лучших моделей? Как хорошие API справляются с этим?