Laravel. Roadmap

Дорожная карта по Laravel от CutCode это план-навигатор для организации обучения и развития. На Roadmap указаны все возможности Laravel с ссылками на статьи и видеоуроки, а также приоритет их изучения. Roadmap создан для тех разработчиков, которые хотят изучить Laravel самостоятельно. Мы постарались сделать удобный и интересный инструмент для Вас. Пора пройти эту дорожную карту!

Этапы обучения
  • Обязательно для изучения
  • Расширение знаний после изучения
    обязательного материала
  • Изучение по мере необходимости
  • Дополнительная информация
0% пройдено (0 из 106)

Обязательные знания

  • Frontend
    HTML, CSS, JS
  • Tools
    PhpStorm/VS code
  • PHP
    Основы, ООП, мышление разработчика
  • Database
    MySQL/PostgreSQL

Laravel

Сэкономь своё время!

Хочешь обогнать своих конкурентов и быстрее стать профессиональным разработчиком? Обучайся Laravel по курсам от CutCode и экономь свое время (а время это деньги!)

Смотреть курсы от CutCode

Инструменты и знания

PHPDoc
GIT
Конвенция наименований
Code style

Установка

Установка через Composer
Установка через Docker

Маршрутизация (Routing)

Основы (Basic Routing)
Параметры маршрутов (Route Parameters)
Именованные маршруты (Name router)
Привязка модели (Route model binding)
Группы маршрутов (Route group)
Резервные маршруты (Fallback Routes)
Кеширование маршрутов (Caching)
Подмена методов форм (Form Method Spoofing)
Ограничение трафика (Rate limiting)
Cross-Origin Resource Sharing CORS

Middleware

Middleware

Контроллеры

Базовые контроллеры
Контроллеры ресурсов (Resource controller)
Вложенные ресурсы (Nested Resources)
Внедрение зависимостей (Dependency Injection)
Одноэлементные контроллеры (Single action controller)
Неглубокая вложенность Shallow nesting)

Views

Шаблоны
View Composers

Blade

Отображение данных (Displaying Data)
Blade директивы (Blade Directives)
Макеты (Layout)
Компоненты (Components)
Формы (Forms)
Subview
Service Injection
Расширение Blade (Extending Blade)

Frontend

Bundling Assets
Livewire
Inertia
Vue
React
Splade

База данных

Конфигурация (Configuration)
Запросы к базе данных (SQL Queries)
Конструктор запросов (Query builder)
Миграции (Migrations)
Seeding

Eloquent

Модели (Models)
Фабрики (Factories)
Коллекции (Collections)
Отношения в Laravel (Defining Relationships)
Отношение многие ко многим (Many To Many Relationships)
Область запросов (Query scopes)
Accessors / Mutators
Casting
Eager loading
Полиморфные отношения (Polymorphic relation)
Подзапросы (Subqueries)
Model events
API resource
Курсорная пагинация

Обработка ошибок

Using Exception in try...catch
Http Exception, Custom error page
Customizing Renderable & Reporting Exception
Global contextual data

Request

Получение входных данных (Retrieving Input)
Извлечение загруженных файлов (Retrieving Uploaded Files)
Методы запроса (Request methods)

Response

Создание ответа
Перенаправления (Redirects)
Другие типы ответов

Validation

Основы
Form requests

Дополнительные инструменты

Помощники (Helpers)
События и слушатели (Events and listeners)
Отправка писем (Mail)
Уведомления (Notifications)
Очереди и задания (Queues)
Трансляции (Broadcasting)
Планировщик задач (Task Scheduling)
Кэширование (Caching)
Текстовый поиск (Text search)

Архитектурные концепции

Request Lifecycle
Service Container
Service Providers
Contracts
Facades
SOLID, DRY, KISS, YAGNI, Code Smells, TDD/BDD, DDD, ADR
Service и Actions
DTO
EAV
Trait Macroble
View Model
Pipelines

Testing

Основы тестирования
Pest

Packages

Разработка собственных пакетов
Админ-панель Moonshine

Security

Защита CSRF
Аутентификация (Authentication)
Авторизация (Authorization)
Headers для безопасности

Deployment

Требования к серверу
Оптимизация
Forge / Vapor

CI/CD

GitHub Action

Monitoring

Debugbar
Telescope
Sentry