Я знаю, что важно, чтобы код пользовательского интерфейса был отделен от кода домена - приложение легче понять, сохранить, изменить и (иногда) изолировать ошибки. Но вот мой ментальный блок ...Как вы сохраняете логику приложения отдельно от пользовательского интерфейса, когда компоненты пользовательского интерфейса имеют встроенные функции?
Delphi поставляется с компонентами с методами, которые делают то, что я хочу, например, компонент RichText Memo позволяет мне работать с богатым текстом. Другие компоненты, такие как строковая сетка TMS, не только делают то, что я хочу, но и оплачиваю дополнительную функциональность. Эти функции помещают R в RAD.
Кажется нелогичным писать свои собственные классы, чтобы делать то, что кто-то еще сделал для меня. Он изобретает колесо, когда-либо пробовал работать напрямую с богатым текстом? :-)] Но если я использую функциональность, встроенную в такие компоненты, то в итоге у меня будет много перемешанного пользовательского интерфейса и кода домена. У меня будет форма с большей частью моего кода, встроенного в его обработчики событий.
Как вы справляетесь с этой проблемой? ... Или, если я хочу продолжить использовать код, который уже написал для меня, как бы вы предложили мне решить эту проблему?
Не завлекайтесь на то, что визуальные аспекты образуют R в RAD. Rapid исходит из «минимального планирования в пользу быстрого прототипирования» и применяется ко всем слоям, даже для быстрого прототипирования веб-сервисов (которые явно не имеют интерфейса). –
@Jeroen: Конечно, но я думаю, что он спрашивает/как/не завлекается в него или как кодировать, используя среду RAD, но не попадает в эту ловушку. –
@ Давид: Спасибо за эту перспективу. Я об этом не думал. Но это действительно интересная перспектива. –