Курс по фреймворку Symfony
Изучение самого востребованного на рынке фреймворка
Зачем мне изучать фреймворк?
Многие задаются этим вопросом и немногие находят правильный ответ на него. Какими бы разными ни казались задачи разных проектов, в их основе лежат шаблонные решения, являющиеся результатом продолжительного развития всего сообщества разработчиков в целом. Фреймворк - это экосистема, а в некоторых случаях (например, простой блог) - это даже наполовину готовый продукт. Фреймворк предоставляет ряд готовых инструментов (от простых до достаточно сложных), отдавая нам основное время на решение действительно важных и нестандартных (лишь иногда) задач текущего проекта. Если вас это не убедило, представьте, что вам придётся доделывать проект, написанный с нуля, за другого разработчика. Вы не можете быть уверены ни в качестве продукта, ни в знаниях разработчика. Также вы не можете быть уверены, что проект будет расположен для будущих изменений в коде, не сразу будут очевидны ошибки, паттерны или места, где можно было бы сделать лучше. Таким образом, фреймворк предлагает общие правила и одну замкнутую систему, в рамках которой команда разработчиков понимает друг друга, употребляя общий словарь терминов, предлагаемый фреймворком.
Почему Symfony?
Конечно, фреймворк - это не панацея и даже иногда это не лучшее решение для поставленной задачи. На фреймворке так же можно писать плохой код, как и на чистом PHP, другое дело, что такой код легче рефакторится и, соответственно, меньше вредит бизнес-задачам. Symfony - это пример хорошего кода. Ну, скажем, не такого плохого, как в других фреймворках. Да, он непростой, но чем выше вы ставите задачу, тем быстрее вы растёте. В этом курсе вы познакомитесь с важными компонентами фреймворка, среди которых ORM Doctrine, шаблонизатор Twig, аннотации, Dependency Injection, Routing, Security, HttpFoundation и многие другие. Курс рассчитан на крепких новичков в разработке, хорошо понимающих ООП (на уровне композиции и агрегации, задач интерфейсов и абстрактных классов), работу пространств имён и композера, работу HTTP протокола и прочие основы веба.
Программа курса
Основы Symfony
- 1. Установка фреймворка Symfony: обзор структуры и конфигурация
- 2. Пишем первый контроллер на Symfony и работаем с шаблонами
- 3. Doctrine ORM: первая сущность, миграции и фикстуры
- 4. Работаем с шаблонизатором Symfony
- 5. Формы в Symfony
- 6. Полноценный CRUD в Symfony
- 7. Вебпак и загрузка стилей
- 8. Форма поиска на Symfony
Пишем блог
- 9. Регистрация на Symfony. Создание сущности пользователя
- 10. Создание формы регистрации и отправка писем на почту
- 11. Знакомство с Event и EventSubsriber в Symfony
- 12. Создание формы логина на Symfony
- 13. Авторизация в Symfony через социальные сети. Часть 1: авторизация через Google
- 14. Авторизация в Symfony через социальные сети. Часть 2: авторизация через Github
- 15. Знакомство с созданием консольных команд: cron.
- 16. Работа с доктриной. Связь один ко многим: связываем комментарии с постами
- 17. Работа с доктриной. Один ко многим: связываем пост с автором
- 18. Работа с доктриной. Многие ко многим: связываем посты с категориями
- 19. Поговорим о сервисах в Symfony
- 20. Слушатели: как работают и как их использовать не по стандарту
- 21. Разворачиваем Symfony приложение в Docker с использованием php 7.4
- 22. Консольные команды в Symfony: расширенные возможности
- 23. Собственные типы данных для Doctrine и Value Object