LINUX.ORG.RU

[ООП Книга] Что почитать?


0

3

Какие есть книги хорошие по теории ООП?
Требования:
Язык применения: не важен.
Важно: чтобы были внятно обсуждены концепции и их мотивация.
Чтобы обсуждалось: ковариантное и контравариантное наследование,
миксины, контракты, multiple-dispatch и тому подобные прелести.

★★★

Иан Грэхем «Объектно-ориентированные методы. Принципы и практика»

Бертран Мейер «Объектно-ориентированное конструирование программных систем»

и да, здесь есть поиск.

Corey ()
Ответ на: комментарий от Corey

Первого не нашел.
Второе хорошо, но больше похоже на рефлекс на слово контракт.
Миксинов в ней нашел, multiple-dispatch тоже.

Svoloch ★★★ ()
Ответ на: комментарий от true_admin

wikipedia?

Несомненно источник целостной и логично связанной информации....

Svoloch ★★★ ()

Если разбор реализации объектной системы попадает под топик, то The Art Of Metaobject Protocol

yoghurt ★★★★★ ()
Ответ на: комментарий от yoghurt

Это я уже ел. Вкусно, но не совсем то о чем я просил.

Svoloch ★★★ ()
Ответ на: комментарий от SuperNoob

Ты сам-то по своим ссылкам ходил? На Озоне нет в наличии, а по второй ссылке доставка судя по всему только по Украине (если там вообще актуальная информация)

yoghurt ★★★★★ ()

>ковариантное и контравариантное наследование

::Вылезает из танка:: А что, кто-то еще кроме Скалы такие штуковины поддерживает?

Macil ★★★★★ ()
Ответ на: комментарий от Macil

Вроде у шарпа что-то было. Да и вообще, как я понял, это относится только к строго типизированным языкам?

yoghurt ★★★★★ ()
Ответ на: комментарий от yoghurt

>это относится только к строго типизированным языкам

Судя по всему. Это дело связано с параметризованными типами, как они будут упорядочиваться в зависимости от своих аргументов. Но это только в тех языках, где есть наследование.

В яве они всегда ковариантные т.е. если B < A, то и Foo[B] < Foo[A]. Скала позволяет этим делом рулить. И по умолчанию там нет никакой вариантности, ее нужно явно указывать.

Macil ★★★★★ ()
Ответ на: комментарий от Macil

> ::Вылезает из танка:: А что, кто-то еще кроме Скалы такие штуковины поддерживает?

А в CL я так понимаю, тоже это поддерживается с помощью method combination order most-specific-last and most-specific-first.

paranonymous ()
Ответ на: комментарий от Love5an

В CL ... вообще можно любого запилить. fixed

anonymous ()
Ответ на: комментарий от yoghurt

Да это баг такой, на болеро. Можно заказывать отсутствующие товары. :(

SuperNoob ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.