курс

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

1131 студент 575 сообщений
Последнее обновление: 21 ноября 2024
Курс PHP: Полиморфизм
3 900 ₽ в месяц
за все курсы Хекслета
Зарегистрироваться
  • Тренажер с практикой
  • Бессрочный доступ к теории
  • Асинхронный формат
    обучения

Включено в курс

17 уроков (видео и/или текст)
19 упражнений в тренажере
49 проверочных тестов
Помощь в «Обсуждениях»
Доступ к остальным курсам платформы

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

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

Описание

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

Теория и практика в курсе рассчитаны на тех, кто уже хорошо знаком с языком PHP. Если у вас возникнут сложности, рекомендуем пройти эти курсы:

Программа курса

Продолжительность 22 часа

Формат обучения

Испытания

Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. Обычно мы рекомендуем выполнить 3-5 испытаний. Но если не получается, не отчаивайтесь. Просто вернитесь к ним позже

#
Задание
% завершений

Отзывы

Аватар пользователя Артем Похилюк
Артем Похилюк 04 февраля 2023

Взрыв эмоций)

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

В итоге два часа тупил в монитор, не понимая как же с этой "змеёй" управиться - хвост отрежешь, голова вырастает, и наоборот.

Гуглить и уж тем более пользоваться "подсказкой" принципиально не хотел.

А сегодня как-то за час всё сложилось. Используя лучшие наработки курса "Деревья", используя органично переплетенные ТРИ функции с несколькими рекурсивными вызовами, РЕШИЛ!! Почувствовал себя чуть ли не гением, очень горд сдобой, сохранил свой код в избранное.

И вот потом открываю решение учителя. В три раза короче и в миллион раз изящнее, ВООБЩЕ БЕЗ РЕКУРСИИ )))

И я бы не назвал при этом своё решение костыльным. Ну хотя конечно по сравнению с учительским так и есть, наверное.

Круто.


Аватар пользователя Lovi Pticu
Lovi Pticu 04 августа 2019

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


Аватар пользователя Юлия  Белашова
Юлия Белашова 02 августа 2019

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


Аватар пользователя Andrey
Andrey 24 июня 2022

Боже, паттерн Состояние самое прекрасное что я видел в своей жизни. Когда понимаешь суть работы таких "трафаретов", с которыми действительно не нужен ни один if, то так и хочется закричать: "А что, так можно было??!!!1".

Пока что это для меня стоит на первом месте во всем PHP-курсе по полезности. Спасибо!


Аватар пользователя Анна
Анна 10 декабря 2019

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

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

Рекомендуемые программы

профессия
Программирование на PHP, Разработка веб-приложений и сервисов используя Laravel, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Python, Разработка веб-приложений и сервисов используя Django, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Тестирование веб-приложений, чек-листы и тест-кейсы, этапы тестирования, DevTools, Postman, SQL, Git, HTTP/HTTPS, API
4 месяца
с нуля
Старт 26 декабря
профессия
Программирование на Java, Разработка веб-приложений и микросервисов используя Spring Boot, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Google таблицы, SQL, Python, Superset, Tableau, Pandas, визуализация данных, Anaconda, Jupyter Notebook, A/B-тесты, ROI
9 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Ruby, Разработка веб-приложений и сервисов используя Rails, проектирование и реализация REST API
5 месяцев
c опытом
Старт 26 декабря
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на JavaScript, разработка веб-приложений, bff и сервисов используя Fastify, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 26 декабря