Комментарии 2
А в прошлой статье говорили «Да не, нам и так норм.» :)))
Понятно, что увлекаться кодегеном не вежливо, но после прошлой статьи на эту тему я понял и согласился, что интерфейс подели надо развязать с контрактом для верстальщиков, так что мне пришла нетипичная мысль. Сделать два совпадающих друг с другом по полям интерфейса, один для верстальщиков, другой для кодеров и кодегеном рожать посредника, перекладывающего поля, соответствующего обоим интерфейсам и сыплющего не критическими ошибками если поля не совпадают. Получаем предельную простоту в обращении, никаких атрибутов, полная статическая проверка, возможность поменять один из интерфейсов по инициативе любой из сторон и быстроту реализации.
Для какого-нибудь небольшого проекта это будет тяжеловесно и избыточно, но для вас вполне может быть вариантом.
Понятно, что увлекаться кодегеном не вежливо, но после прошлой статьи на эту тему я понял и согласился, что интерфейс подели надо развязать с контрактом для верстальщиков, так что мне пришла нетипичная мысль. Сделать два совпадающих друг с другом по полям интерфейса, один для верстальщиков, другой для кодеров и кодегеном рожать посредника, перекладывающего поля, соответствующего обоим интерфейсам и сыплющего не критическими ошибками если поля не совпадают. Получаем предельную простоту в обращении, никаких атрибутов, полная статическая проверка, возможность поменять один из интерфейсов по инициативе любой из сторон и быстроту реализации.
Для какого-нибудь небольшого проекта это будет тяжеловесно и избыточно, но для вас вполне может быть вариантом.
Ну в тот момент это не было «основной» проблемой проекта и казалось что не стоит тратить время на ее решение:) Но мелкие неудобства копятся, и вот достигли точки когда потребовались изменения.
Буду честен, не до конца понял ваше предложение. Кажется что при такой реализации мы существенно потеряли бы в удобстве использования. Буду благодарен если опишите свой пример решения поподробнее. Спасибо.
Буду честен, не до конца понял ваше предложение. Кажется что при такой реализации мы существенно потеряли бы в удобстве использования. Буду благодарен если опишите свой пример решения поподробнее. Спасибо.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Избавляемся от «мистических» строк в системе реактивного связывания на Unity