Re: XXXXXXXXX
Aleksey Aristov <[email protected]>
| Newsgroups | gmane.org.it-ru.germany.general |
|---|---|
| Organization | iMEDIC |
| Message-ID | <[email protected]> |
[cut]
> Например, систему документооборота возможно постороить положив некоторый
> класс СDocument в основу и утверждать, что у него есть свойства (дата,
> исполнитель, адрес). А можно также создать систему основанную на классе
> CMovement и говорить, что любое поступление денег на счёт или продажа
> товара - это движение у которого есть свойства (тип: материальное или
> денежное, количество и пр.) . В реальном мире есть объект Документ, но
> Движение не является объектом реального мира, это немножко другой уровень
> абстракции.
примерно это я и имею в виду. с одной стороны, CDocument - это данные. у
него нет никакого собственного разумного поведения. это просто контейнер
с информацией. с другой - CMovent - это типичное вычисление. если эти
две сущности рассматривать как классы мы получим замечательную ситуацию.
один класс с кучей аттрибутов, но без каких-либо разумных действий. и
второй класс, практически, без данных, зато с какими-то сложными
вычислениями внутри. ну зачем, спрашивается ООП в таком случае?
конечно, можно, все вычисления запихать в CDocument. но это будет плохо
из многих других соображений. думаю, очевидных...
[cut]
> А вот это интересно. Давай попробуем рассмотреть такие задачи, которые
> впихиваются в модель и постороть для них другую модель...То есть я
> утверждаю, что существующая модель плохая, наверно можно перестроить модель.
ну давай рассмотрим мой пример из предыдущего постинга. пишем CGI. имеем
примитивную конструкцию request->response. фирма sun предлагает решение,
(Servlet) в котором для реализации такой конструкции предлагается
написать класс. со специальным методом, который будет вызван в заветный
момент. тем или способом этому методу будут переданы все необходимые
параметры необходимые для исполнения запроса. я утверждаю, что это очень
плохой дизайн. ясно, что такое решение диктуется свойствами языка (ява)
под которое оно "заточено".
я берусь утверждать, что задача написания CGI приложений очень плохо
ложится в объектную модель. при "впихивании" ее в объектную совершенно
теряется функциональная часть задачи.
ps
надеюсь, я ясно сформулировал...
/AAV