Re[4]: Принцип подстановки Лисков (LSP из SOLID)
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.11.11 10:37
Оценка:
Здравствуйте, k.o., Вы писали:

KO>А ты про empty base class optimization, не слышал? Или про ADL?


Тип решил поразить широтой своих познаний?
Если я правильно понял первый базворд относится к борьбе за размеры экземпляров типов основанную на опитимизациях которые делают отдельные компиляторы — говоря проще занятие ерундой.

Второе ADL (Argument-dependent name lookup) вообще никакого отношения к делу не имеет, так как относится к алгоритму разрешения перегрузки операторов и функций.

Короче, это смешно. Нахватался умных базвордов решил этим похвастаться?
Здорово, но не в тему.

KO>В C++ наследование, всё-таки, даёт некоторые возможности, которые с помощью аггрегации не получишь. Между прочим, кто сказал, что единственное назначение наследования это выражение отношения тип — подтип согласно LSP?


В C++, как и в любом другом ООЯ можно использовать ООП по делу — для реализации иерархий классов предметной области и для реализации Абстрактных Типов Данных. А можно не по делу.

Забавно то, что когда кто-то видит как кто-то другой пытается вырезать гланды автогеном и через жопу, то он смеется или возмущается. А когда тоже самое делается в области программирования, то мало того, что никто не удивляется, но еще и поясняется товарищи которые с умным видом начинают защищать это увлекательное занятие.

KO>B. Liskov "Data Abstraction and Hierarchy"

KO>

KO>We are using the words "subtype" and "supertype" here to emphasize that now we are talking about
KO>a semantic distinction. By contrast, "subclass" and "superclass" are simply linguistic concepts in
KO>programming languages that allow programs to be built in a particular way. They can be used to
KO>implement subtypes, but also, as mentioned above, in other ways.


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