Небольшая разница в модели - отдельный класс?
От: snaphold  
Дата: 19.10.22 07:52
Оценка:
В приложении есть процесс заведения клиентов.
90% полей у клиентов одинаковые и 10% отличаются.

у клиентов также 95% процессов одинаковые и около 5% каждый тип клиента имеет свои.
из этих 95% общих процессов 50% процессов вообще одинаковые и 50% в процессах учитывается своя логика чаще всего основанная на отличающихся 10% полей.

Вопрос.
Как построить бизнес логику для такого.
например операция SaveClient (VIP, Basic, NonResident)

Сейчас сделал на основе паттерна Builder 3 класса VIPClientBuilder, BasicClientBuilder и NonResidentClientBuilder
и в каждом свой набор методов, даже тех которые полностью одинаковые для всех типов клиентов.

Есть смысл общие методы выносить в базовый класс делая методы виртуальными?
Или может предложите варианты получше
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.