Показать сообщение отдельно
Старый 14.02.2020, 17:15   #40  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2155 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Я бы сказал, что идеальная картинка такая:
1. Есть процедура. При ее запуске всегда выполняется п.2 (кроме явного разрешения пропустить проверку, если мы прям уверены, что всё ок).
2. Есть пререквизиты, оформленные в одном месте полным списком. Можно в любой момент запросить валидность запуска процедуры и получить как краткий ответ "можно" / "нельзя" так и расширенный - что именно ок, что именно не ок.
3. Есть Интерфейс пользователя с опциями:
3.1. Кнопка отображается при прохождении п.2.
3.2. Кнопка активная при прохождении п.2.
3.3. Кнопка после нажатия проверяет п.2. Если можно - выполняет п.1, если нельзя - дает расширенный ответ почему нельзя.
3.4. Отдельная кнопка "Проверка" / "Предварительный запуск", выполняет п.2, дает расширенный ответ.

В каждом конкретном случае разработчик в зависимости от процесса / пользователей выбирает нужный вариант Интерфейса.

Плохо что в стандарте есть разные варианты реализации всех 3х пунктов, и на вскидку не припомню ни одной идеальной реализации
__________________
Ivanhoe as is..
За это сообщение автора поблагодарили: sukhanchik (4).