Я реализовал GUI с использованием Swing и всегда пытался следовать шаблону MVC настолько, насколько мог.
Мне было интересно, хотя MVC - не единственная часть головоломки.
Используются ли в GUI автоматы FSMа также дизайн?
Я никогда не использовал FSM в графическом интерфейсе, и мой подход был следующим: при действии был вызван соответствующий метод контроллера, чтобы завершить обновление модели и завершить обновление представления.
Обычно послезапрос, вызванный действием пользователя. Я использовал несколько простых проверок, чтобы убедиться, что пользователь должен иметь возможность выполнять действия такого типа: включен ли конкретный компонент?или метка видна такого рода?и т. д.
Пока что это работает, но я должен признать, что мне «повезло», и мне не пришлось создавать слишком сложные, изощренные или сложные графические интерфейсы.
Раньше я собирал автоматы (в другом виде.приложения - в основном на C ++), и я начал задаваться вопросом, действительно ли FSM в GUI используются в качестве шаблона, и мой подход, т. е. для проверки кода ActionListeners, того, что видит пользователь, какие компоненты включены или отключены и т. д., чтобы определить,пользователь должен увидеть какое-то сообщение об ошибке вместо того, чтобы выполнять определенное действие, которое, например, обещание кнопки, на самом деле является плохой идеей для полноценных приложений с графическим интерфейсом.
Поэтому, когда вы начинаете разрабатывать графический интерфейс помимо того, как внедрять MVC, вамподходит / ассоциируется с FSM в вашем дизайне?
ОБНОВЛЕНИЕ:
После просмотра статьи Дхрува Гайролы в его комментарии я все еще озадачен этим.
В статье упоминается создание FSM, котороехотя на самом деле привязать к реализации калькулятора, а это означает, что даже если калькулятор был реализованполучение пользовательского ввода без GUI, но через командную строку, FSM все еще будет необходим.
Я все еще не уверен, является ли FSMs для проверки действий пользователя в каждый момент времени популярным или действительным проектом.
Кажется, что это может быть слишком много усилий и требует, чтобы GUI был разработан полностью заранее и все возможные действия пользователя были сопоставлены с конкретными результатами в зависимости от конкретных состояний.
Учитывая тот факт, что не было никаких комментариевпросто один ответ, я склонен думать, что, возможно, FSM (для проверки действий пользователя над элементами управления) фактически не используются.
Любые комментарии по этому вопросу приветствуются.
Спасибо.