mus
Новичок
ООП, кто должен выполнять эту работу?
Господа, представим себе, что у нас есть некий склад. Там есть сущности - поставщик и товар. В базе данных эти сущности представлены отдельными таблицами, также существует третья для факта операции сделки, отношение -> многое ко многим.
Пишем класс Production и Supplier, определяем свойства, методы...
А теперь вопрос. Операция покупки - как её представить? В какой класс определить? Это поставщик продал нам товар или товар продался нам от поставщика? В каком из классов определить метод, отвечающий за операцию продажи товара от поставщика нам? Просто ранее мне говаривали (в университете), что в ООП объект обычно сам над собой выполняет действие, никто над ним ничего не выполняет...Скажем стол имеет метод moveTo для перемещения, однако сам стол же двигаться не может...
Насколько это верно с точки зрения ООП?
И вообще, стоит ли заморачиваться по этому поводу?
А также вот ещё вопрос, может все эти операции сделать отдельными функциями? Внутри классов определить лишь работу с объектами этих классов, как то "получить ИД текущего товара", "Изменить категорию для товара", "Увеличить значение статуса поставщика" и т.д., а все остальные написать в процедурном стиле, или это дурной тон?
Господа, представим себе, что у нас есть некий склад. Там есть сущности - поставщик и товар. В базе данных эти сущности представлены отдельными таблицами, также существует третья для факта операции сделки, отношение -> многое ко многим.
Пишем класс Production и Supplier, определяем свойства, методы...
А теперь вопрос. Операция покупки - как её представить? В какой класс определить? Это поставщик продал нам товар или товар продался нам от поставщика? В каком из классов определить метод, отвечающий за операцию продажи товара от поставщика нам? Просто ранее мне говаривали (в университете), что в ООП объект обычно сам над собой выполняет действие, никто над ним ничего не выполняет...Скажем стол имеет метод moveTo для перемещения, однако сам стол же двигаться не может...
Насколько это верно с точки зрения ООП?
И вообще, стоит ли заморачиваться по этому поводу?
А также вот ещё вопрос, может все эти операции сделать отдельными функциями? Внутри классов определить лишь работу с объектами этих классов, как то "получить ИД текущего товара", "Изменить категорию для товара", "Увеличить значение статуса поставщика" и т.д., а все остальные написать в процедурном стиле, или это дурной тон?
riem("bubliki");
/off