Я работаю над приложением android в Kotlin, которое имеет профили пользователей, и я стараюсь изо всех сил, чтобы код был максимально чистым, используя MVVM. Работая над частью, отвечающей за обновление профиля пользователя, я заметил, что модель (POJO), viewmodel и сам фрагмент на 90% похожи на те, которые отвечают за регистрацию пользователя. У меня вопрос: какой дизайн выбрать, и почему:
- разделяют 2 действия, соблюдая принцип единой ответственности, но имеют много повторяющихся кодов
- , объединяющих их в один действие (одна viewmodel, модель и фрагмент), с некоторыми дополнительными, если здесь и там
Или есть другой способ? Может с интерфейсами? Наследство? Как это реализовать?