Показать сообщение отдельно
  #40 (permalink)  
Старый 04.11.2010, 10:19
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от eai
Многослойные (наследованные) городушки неотъемлемая часть ООП
вот потому так и живем такие что ли?

Сообщение от eai
Вау, это я не понял мне определение нужно дать что ли?
ну что значит должен? Мне интересно, что ты подразумеваешь под архитектурой. И чем она отличается от дизайна

Сообщение от eai
1. Повторное использования кода
ну скажем так наследование реализации не очень правильно, но бывает удобно. Но дело не в этом. Если функциональность используется только внутри объектов, есть агрегация. Если нужно предоставить функциональность во внешнюю среду, есть... назовем это миксинами, что-то типа
mixin(Obj, Observable);

а наследование провоцирует спихивание общей функциональности вверх по иерархии, в результате чего, чтобы узнать, что делает метод надо лазить по этой иерархии вверх-вниз и обратно. При агрегации это не так актуально, так как наследование - более тесная связь, т.е. оно увеличивает связанность (coupling), что есть не хорошо, особенно для "больших стационарных приложений"
Сообщение от eai
2. Управления объектами
что имеется в виду?
Сообщение от eai
3. Управления поведением объектов
что имеется в виду?
Сообщение от eai
4. Принцип абстракции
Сообщение от rainman_rocks
Динамическая "утиная" типизация по определению представляет собой полиморфизм. О чём тут ещё говорить.
пока что сложностей с синтаксисом не видно...

Сообщение от eai
Вообще наследование призвано отразить иерархичность реального мира.
ну к чему этот довод, наталкивающий на мысли о религиозности собеседника?
Можно еще Александра Степанова вспомнить (разработчик STL если чё)
Сообщение от Александр Степанов
I think that object orientedness is almost as much of a hoax as Artificial Intelligence...
Сообщение от Александр Степанов
I find OOP technically unsound. It attempts to decompose the world in terms of interfaces that vary on a single type. To deal with the real problems you need multisorted algebras - families of interfaces that span multiple types. I find OOP philosophically unsound. It claims that everything is an object. Even if it is true it is not very interesting - saying that everything is an object is saying nothing at all. I find OOP methodologically wrong. It starts with classes. It is as if mathematicians would start with axioms. You do not start with axioms - you start with proofs. Only when you have found a bunch of related proofs, can you come up with axioms. You end with axioms. The same thing is true in programming: you have to start with interesting algorithms. Only when you understand them well, can you come up with an interface that will let them work.
Ответить с цитированием