PRO курс

PHP: Полиморфизм

431 сообщение в сообществе 469 учащихся

Полиморфизм (подтипов) – главная отличительная черта современного ООП. Он позволяет значительно уменьшить количество условных конструкций и сделать код расширяемым.

Вместе с тем, полиморфизм – большая и глубокая тема, требующая серьезной подготовки. Здесь начинаются шаблоны проектирование, принципы SOLID и контейнеры зависимостей. Все это является неотъемлемой частью разработки на PHP у профессиональных разработчиков.

Чему вы научитесь:

  • Понимать разницу между разными видами полиморфизма и решаемые ими задачи
  • Распознавать и применять шаблоны проектирования (Стратегия, Фабрика, Состояние, Декоратор, Нулл-объект и другие)
  • Использовать различные виды диспетчеризации для уменьшения и упрощения кода
  • Управлять зависимостями, внедрять их с помощью DI-контейнера
динамическая диспетчеризация параметрический полиморфизм полиморфизм подтипов инверсия зависимостей шаблоны проектирования
Последнее обновление: 20 ноября 2020

Уроки курса

Испытания

Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки.

# Задание % завершений
1 Будильник 88%

Автор

Аватар пользователя Kirill Mokevnin

Кирилл Мокевнин

Сооснователь и CEO образовательного проекта Хекслет. Программирую с 2007 года. За это время прошёл путь от разработчика до технического директора и управляющего отдельным подразделением (филиалом). Управлял командами, в которых больше 50 разработчиков.

  • Программирую на языках: Elixir, Clojure, JavaScript, PHP, Ruby.
  • Соорганизатор конференции Nastachku.ru.
  • Вимер.
  • Топлю за DevOps и автоматизированные тесты.

Впечатления

Я нашел отличительную черту hexlet от большинства других ресурсов в том, что здесь учат не тому - ЧТО такое полиморфизм, инкапсуляция и т.д, а тому - ЗАЧЕМ и КАК эти концепции применяются в реальном мире, оставляя за вами право давать этим терминам определения. Пройдя курс Полиморфизм за пару дней (не мог оторваться, как от Игры престолов), я понял об ООП больше, чем за несколько месяцев изучения и практики на других ресурсах. Браво!

Спасибо за этот курс - давно так башню не сносило:-) Очень полезные вещи узнала. Понравилась объемная практика! Обязательно - буду еще раз проходить.

Задание огонь! Спустя 3 дня и после осознания, что "активация будильника != переход в режим bell ", увидела долгожданную надпись "status: finished → Тесты прошли!". Счастью нет придела.

P.S.: В этом упражнении TDD - это наше все!

Очень интересное задание. Спасибо за него. Еще бы парочку таких же, чтобы закрепить)) Сначала смотришь и ничего не понимаешь, что откуда брать. Читаешь как работают часы, читаешь первый тест, смотришь пример в уроке, реализуешь. Сначала еще так пишешь в основной класс через ифы по привычке, а потом думаешь надо же без ифов, смотришь как в уроке, пробуешь, получается и тут ("Блин а че так можно чтоли?"), а дальше по накатанной. Правда в итоге сравниваешь с учителем, а у него ваще все красиво. И с делением по модулю у учителя тоже классный оборот.

Как проходится это задание: написал кусок когда прогнал тесты -> f , исправил -> перешел к следующему тесту. TDD :D. Спасибо за ТДД в действии, очень круто

Курс PHP: Полиморфизм
продолжительность
22 часа
награда
98 баллов