Книги по ООП (не для начинающих)?

Уже некоторое время работаю программистом, но у меня остаётся некий пробел в знании ООП. Если основные концепции я более-менее знаю и разбираюсь, то такие темы как "абстрактные классы", "абстрактные методы", "интерфейс" и т.п. мне не ясны.

Есть какие-нибудь книги (желательно без привязки к языку), которые дадут понимание этих вещей? Ну или хотя бы статьи?
  • Вопрос задан
  • 11511 просмотров
Пригласить эксперта
Ответы на вопрос 8
NSA-bot
@NSA-bot
Посмотрите: "Объектно-ориентированное мышление" Мэтт Вайсфельд
Ответ написан
Maksclub
@Maksclub
maksfedorov.ru
Headmaster11,
К сожалению в технической литературе подразумевается везде, что абстракции все знают с детского сада...
да-да — это одно из базовых понятий нашего мира, и да —его не дают почему-то в советско-российской школе,

Самое забавное — эти знания приобретаются в любом техническом ВУЗе побочными путями, где абстракции как-бы вообще не в тему :) На ИТ специальностях это изучается вроде как подробно (но это не точно, не учился)

Могу посоветовать видео:
https://www.youtube.com/watch?v=bPp3lAkuMEY

И статью, которую я написал — не даст фундамента совсем, но может чего и даст:
Абстракции и как они текут
В статье попытался передать материал, который я 2-3 раза доносил своему директору и 1С-программисту (оба взрослых) в нашем проекте — по итогу родилась статья...

...

Также абстрактное мышление развивается при чтении фантастики и многочисленном опыте в разных сферах.
Абстрактное мышление не развивается с мифическим опытом прожитых лет!
Ответ написан
qonand
@qonand
Software Engineer
почитайте книгу Бертрана Мейера "Объектно-ориентированное конструирование программных систем" - это пожалуй на сегодняшний день одна из самых содержательных книг по ООП
Ответ написан
Комментировать
toxicmt
@toxicmt
CTO at hexlet.io
Если хотите совсем настоящего, то пожалуйте в ТАПЛ https://www.ozon.ru/context/detail/id/7410082/

> Эта книга, уже давно ставшая классической, содержит всестороннее введение в системы типов, применяемые в информатике. Среди рассматриваемых тем - нетипизированное лямбда-исчисление, простые системы типов, полиморфизм, вложение типов и рекурсивные типы. Каждая из рассматриваемых концепций сопровождается множеством примеров и задач, что позволяет закрепить теоретический материал.
Ответ написан
Комментировать
ZaykaPupkin
@ZaykaPupkin
Кратко о себе
Не знаю подойдет ли по уровню вам, может слишком для начинающих, но есть бомбический канал на ютубе https://www.youtube.com/user/Defazze/featured
По си шарпу там интерфейсы, классы итд - очень хорошо разжевано.
Ответ написан
Комментировать
@Moonrider
ООП к языку программирования как таковое не привязывается. Тема важная, но уделять ей время в рамках целой книги - потеря времени (личное мнение).
Сам советую прочитать Сьерра, Бейтс - Изучаем Java (соответственно раздел по ООП). Разобрано очень понятно по всем основным принципам.
Ответ написан
Комментировать
@daniil14056
Очень хороший сайт, с красивой теорией с аналогиями и примерами из жизни, схемы и примеры программ для Java, но с теорией сразу ООП поймете
https://refactoring.guru/ru/design-patterns/bridge
Ответ написан
Комментировать
@vanyamba-electronics
Примерно так это работает.
typedef void (*MethodType)();    // Тип указателя на функцию

void myMethodFunc();               // Функция, указателем на которую может служить 
                                                         //  переменная типа MethodType

typedef struct {      // Тип некоего класса    
     MethodType pMethod;  // Виртуальная функция
} SomeClassType;

SomeClassType someObject;
someObject.pMethod = 0;     // Абстрактный объект (интерфейс)
someObject.pMethod = myMethod;  // Определённый объект
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 05:01
999999 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект