Композиция и наследование
Классы в PHP
Паттерны проектирования

ООП В PHP

Навык глубокого понимания архитектуры и написания чистого кода, позволяющий решать сложные задачи

Начать обучение

Входит в подписку (более 50 навыков)

Евгений Филиппов

выпускник Хекслета

Программа обучения

Предметная область

Онтология, проектирование точек на координатной плоскости, семантика массивов

Абстракция

Создание и использование абстракций, уровневое проектирование, разделение системы на слои абстракций, инварианты, обеспечение целостности данных, выделение сущностей и их взаимосвязей в предметной области, инварианты

Инкапсуляция

Объединение данных и функций в рамках одной структуры, создание методов для управления состоянием объекта, сокрытие даных (data hiding)

Интерфейсы

Абстрактный тип данных, сигнатуры, реализация интерфейсов, интерфейс Countable

Структуры

Классы и объекты, автозагрузка классов, синтасис классов, указатели, свойства, методы

Исключения

Способы обработки ошибок, генерация и перехват исключений

Правильная организация кода

Выделение интерфейсов, абстракции, работа с побочными эффектами, принцип SRP

Шаблоны проектирования

Изучение подходов для решения распространенных задач, примеры паттернов, антипаттерны

Конфигурация

Проектирование классов с учетом конфигурации, использование параметров для настройки поведения, изменяемая конфигурация

Объекты-Сущности и Объекты-Значения

Объекты с уникальной идентичностью, объекты, описывающие данные без уникальности, использование объектов внутри других объектов

Fluent Interface

Создание цепочек методов для улучшения читаемости, примеры использования, преимущества и ограничения

Сборщики

Поэтапная сборка сложных объектов шаг за шагом, композиция объектов, текучий интерфейс в сборщиках, библиотеки Carbon, Collection, Symfony String

Полиморфизм

Параметрический полиморфизм, обобщенное программирование, диспетчеризация по ключу (данные, функции, имя файла), утиная типизация, Null Object Pattern

Наследование

Наследование, принцип подстановки Лисков, переопределение методов, ограничения наследования

Шаблоны проектирования

Паттерн Стратегия, Паттерн Фабрика, Паттерн Состояние (State)

Инверсия зависимостей

Принцип инверсии зависимостей, инъекция зависимостей

Объектная композиция

Создание сложных объектов путем комбинирования простых, взаимодействие объектов

Управление зависимостями

Сервис-локатор, DI-контейнер

Проекты

Как проходит обучение

Теория в удобном текстовом формате — легко читать даже с телефона. Живые примеры помогают понять, как всё работает. Материал выстроен так, чтобы вы двигались шаг за шагом, не упуская важных деталей

Подписка от 2 400 ₽/мес

Этот навык уже входит в подписку. Оформи доступ и открывай все навыки сразу (50+)

Подписаться →
  • 50+ навыков в одной подписке
  • Пожизненный доступ к теории
  • Обучение с ИИ-ассистентом
  • Отмена в любой момент