alexs писал(а):это ошибка проектирования приложения если у тебя куча одинаковых форм с одними и темиже элемиентами ввода данных. Обычно народ даже на слышал о таком понятии как нормализация данных - отсюда и вытекает куча одинаковых форм для ввода чёрти-чего, а затем возникают вопросы о бесполезности FK в данных
Смотри случай: у меня в программе есть порядка пяти разных реестров для разных типов документов! Но для всех них характерны операции: ДОБАВИТЬ, ИЗМЕНИТЬ, УДАЛИТЬ, РАСПЕЧАТАТЬ, НАЙТИ ЗАПИСЬ ПО СТРОКЕ ТЕКСТА, ЭКСПОРТ В "MS|OPEN ОФИС", "ОТОБРАТЬ ПО КРИТЕРИЮ" - как минимум!
Зачем мне тратить время на рисование ПЯТИ разных окошек
с кучей одних и тех же элементов на тех же местах , и писать обработчики во всех пяти для каждой формы, если я могу нарисовать только одно с DBGridом, навигатором для понта, и семью кнопочками снизу - как предка для них всех, сделав там же функции поиска и экспорта в "офис", а в порожденных от него "визуально" я только напишу коды обработчиков по нажатию на оставшиеся кнопки и добавлю кой-какие специфические контролы?
Причем тут избыточность и нормализация данных? Мы, наверно, про разное говорим?
detective писал(а):"Программный комплекс из АРМ бухгалтера, АРМ охранника,.. АРМ сантехника. У всей сотни АРМ одинаковые кнопки, одинаковый набор состояний, одинаковые сообщения" - не нравиться мне эта идея, идея наследования уязвимостей от сантехника до бухгалтера.
одинаковые кнопки - одинаковые проф функции, удивлен
И какой смысл рисовать под разные АРМы одного программного комплекса разные во всём окна? Нет, конечно совсем все окна одинаковые быть не могут - это и ежу понятно, но, вот мой пример выше: управляющие элементы будут одни и те же: Таблица, и ряд кнопок под, над, сбоку от нее - кому как нравится! со своими общими от предка текстами-надписями, или специфическими. В потомках же уже можно дорисовывать очень специфичные для формы элементы - этого, вроде, никто не запрещает? - это как раз и дает массу удобств -
использовать порождение/наследование не только в коде, но и в дизайне - то, чего так не хватает в Лазаре.