Form Builder와 Form Object를 활용한 Rails 폼 고도화 전략
Custom Form Builder를 구현하여 레이블, 힌트, 에러 메시지 등 반복되는 UI 마크업을 캡슐화하고 디자인 시스템의 일관성을 강제할 수 있다.
Form Builder와 Form Object를 활용한 Rails 폼 고도화 전략
Custom Form Builder를 구현하여 레이블, 힌트, 에러 메시지 등 반복되는 UI 마크업을 캡슐화하고 디자인 시스템의 일관성을 강제할 수 있다.
Android: form builder на старых добрых View
Привет всем! Хочу поделится идеей создания form builder -а, которую я реализовал некоторое время назад. В приложении я писал модуль, отвечающий за платежи. По предварительным расчетам модуль должен был поддерживать более 300 платежей, каждый платеж приблизительно 10 экранов, т.е. это более 3000 различных экранов. Я тогда не использовал jetpack compose и от мысли, что мне придется написать огромное количество “View-based layouts” xml файлов (а потом их рефакторить и поддерживать) мне становилось как-то не по себе. Мне предложили сделать form builder , который позволял бы легко и в декларативной манере добавлять новые экраны, не плодить огромное количество однотипных файлов и легко вносить изменения. Конечно jetpack compose позволяет достичь всего этого из коробки, но бывает, что по тем или иным причинам вы остаетесь на старом добром View UI и идея какого-либо builder -а может быть для вас актуальна. Итак первое, что мне было нужно – это не плодить xml файлы тысячами. В идеале, хорошо бы иметь один общий файл формы и наполнять его различным содержимым. В моем случае формы были достаточно похожи друг на друга: набор ограниченного числа UI элементов и внизу формы кнопка типа “submit form” (иногда с какими-то пояснениями / ссылками под ней). Решил использовать RecyclerView, в который можно было динамически вставлять нужное количество элементов. Как-то так выглядел xml файл формы: