Курс о том, как проектировать классами, а не просто писать код в классах.
Начинаем с того, откуда взялась парадигма и какую проблему она решала, разбираем объект и класс как понятия, четыре базовые концепции, а затем переходим к проектированию: GRASP отвечает на вопрос «кому поручить обязанность», SOLID – «как не сломать код изменением», паттерны GOF дают готовые решения повторяющихся задач. В конце – методические материалы: книги, первоисточники и лекции для тех, кто хочет копнуть глубже.
Основной язык примеров – C#. Там, где паттерн в другом языке выглядит принципиально иначе, у листинга есть вкладки: Go, Python, TypeScript, Java и Kotlin.