русский
Germany.ruForen → Архив Досок→ Programmierung

Подарки от программис'тов

23.08.22 15:34
Re: Подарки от программис'тов
 
alex445 коренной житель
in Antwort alex445 23.08.22 15:29, Zuletzt geändert 23.08.22 17:11 (alex445)

А, ещё немного запутаннее. Мало установить делегат, который определит состояние кнопки. Я же ещё и выполнить должен его! А как выполнить? А у этой кнопки (точнее, у кастомного объекта команды для этой кнопки) есть спец метод "Установить текущий стиль". Этот метод просто вызывает установленный делегат.


Т.е. я из формы беру объект команды кнопки, устанавливаю этой команде делегаты (по стилю, ещё много какие), а затем вызываю эти делегаты спецметодом. Т.е. всё управление кнопкой делается снаружи. А нафига тогда тащить эту логику в кнопку, нафига кнопке знать, как её валидируют, ставят ей стили и прочее?


У него на каждый такой кастомный базовый тип по хелперу для рисования HTML-тегов сделано. Т.е. в формах он не разные там < input > использует, а свои кастомные хелперы на каждое значение. И все эти хелперы ещё и сохраняют своё состояние - т.е. банально всё содержимое его кастомного базового типа сохраняется в хранилище, чтобы пережить HTTP-сессию... Может, из-за этого весь сыр-бор? Ну типа на форме компоненты меняют своё значение, обновляются, но всё происходит через HTTP запросы, которые не помнят состояния. И он придумал, как для каждого значения сохранить это состояние. Но это же бред - такая модель реализуется на MVVM фреймворках типа Angular или ещё каких, с частничным обновлением UI через ajax (ну или в Блейзор такое с поддержкой состояний из коробки идёт), но уж точно не требует кастомных базовых типов. А человек просто написал свой фреймворк.

 

Sprung zu