Этот вопрос касается дизайна проекта. Проект берет электрическую систему и определяет ее функции программно. Теперь, когда я по колено в определении системы, я включаю значительное количество взаимодействия, которое заставляет систему настраивать себя соответствующим образом. Пример: система открывает и закрывает электрические контакторы, когда происходят определенные события. Поскольку эта система находится на самолете, она опирается на логику воздуха / земли и, таким образом, включает в себя два различных поведения в зависимости от того, где она находится.
Я даю все это объяснение, чтобы продемонстрировать уровень сложности, который содержит это приложение. Как я продолжил в своем проекте, я использовал использование конструкций if / else как средство экстраполяции правильных конфигураций в этой электрической системе. Однако чем глубже я углубляюсь в кодирование, тем больше требуется конструкций if / else. Я чувствую, что достиг точки, когда я неэффективно программирую эту систему.
Для тех, кто занимался такими проектами ранее, я спрашиваю: иду ли я по известному пути (когда речь идет об определении КАЖДОГО возможного сценария, который может произойти), и я должен продолжать настаивать ... или я могу использовать некоторые другие стратегии для решения задачи определения поведения реальной системы.
На данный момент у меня практически нет опыта использования делегатов, но мне интересно, смогу ли я использовать некоторые наблюдатели или другие "какао-благие" качества для проверки сценариев вместо бесконечных блоков if / else.