Как бы Вы создали классы "Документ, клиент и продукт" с ООП ?

student-uni
Дата: 04.11.2017 19:58:27
Задача:

запрограмировать созание документа и заполнение его данными о клинете и продукте с помощью ООП.
Никаких специальных функций не требуется, только передача данных в документ.

Документ должен содержать данные о клиенте и продукте.

Решение вар. 1

Класс документ создается принимая как параметры в конструкторе интерфейс-классы "И-Клиент" и "И-Продукт"
и инициализиерует свои свойства из свойств ему переданных классов.


Решение вар. 2

Класс "Процессор" создается и имеет функцию "MakeDocument" которая принимает как параметры интерфейс-классы "И-Документ", "И-Клиент" и "И-Продукт" и инициализиерует свойства класса "И-Документ" свойствами классов "И-Клиент" и "И-Продукт".

Решение вар. 3

Ваша версия.


Спасибо
hVostt
Дата: 04.11.2017 21:59:13
student-uni,

Фабрика, фабричный метод, билдер.
mayton
Дата: 04.11.2017 22:21:40
В данном примере - нет доводов "против" какого-то определенного из порождающих шаблонов.

По сути пока речь идет о выборе "цвета" фломастера. И автор сам скорее всего подберет шаблон
когда посмотрит все три варианта в совокупности с тем кодом который уже написан.