Уроки по Laravel
На этом цикле уроков вы научитесь работать с таким фреймворком как Laravel. Подразумевается, что вы уже хотя бы на начальном уровне знаете PHP, имеете представление об ООП, обладаете навыками работы с MySQL (базами данных), не впадаете в ступор от таких слов как «веб-сервер» и «командная строка», имеете представление о phpmyadmin и авторизации. В общем, желательно уже что-то уметь и знать в программировании, прежде чем приступать к изучению Laravel 8-9.
Сразу оговорюсь: мои уроки по Laravel - это не строгий формальный учебник и не перевод документации. Они представляют собой сборник рецептов, с помощью которых шаг за шагом можно создать быстро рабочий веб сайт, а затем уже идет углубление и расширение знаний. Все через практику, минимум сухой теории.
Список уроков по Laravel
- Урок 1. Установка Laravel, php, миграции
- Урок 2. Введение в роутинг Laravel
- Урок 3. Первая форма на Laravel
- Урок 4. Простая авторизация и регистрация в Laravel
- Урок 5. Перенос проекта Lavarel на хостинг
- Урок 6. Немного роутинга и вывод из БД Laravel
- Урок 7. Простая отправка email в Laravel через smtp
- Урок 8. Очередь для отправки email в Laravel
- Урок 9. Простое ограничение доступа в Laravel
- Урок 10. MVC, HTTP-запросы и REST
- Урок 11. Обработка, параметры и методы в маршрутах Laravel
- Урок 12. Рендеринг диаграмм в приложениях Laravel
- Урок 13. Знакомство с хелпером, группами маршрутов и посредниками Laravel
- Урок 14. Префиксы, поддомены и подписанные роуты в Laravel
- Урок 15. Введение в представления Laravel
- Урок 16. Введение в контроллеры Laravel
- Урок 17. Контроллеры и получение данных от пользователя
- Урок 18. Введение в фасады Laravel
- Урок 19. Все сначала, или страница контактов Laravel
- Урок 20. Продолжение страницы контактов, или отправка писем с вложением Laravel
- Урок 21. Создание таблицы с помощью миграции в Laravel
- Урок 22. Введение в Eloquent модели
- Урок 23. Введение в области применения (scope) Laravel
- Урок 24. Работа с Ajax в Laravel и загрузка файлов
- Урок 25. Произвольные ЧПУ в Laravel с примером
В первые дни динамического интернета написание веб-приложения выглядело совсем иначе, чем сегодня. Разработчики тогда отвечали за написание кода не только для уникальной бизнес—логики наших приложений, но и для каждого из компонентов, которые так распространены на разных сайтах - аутентификация пользователей, проверка ввода, доступ к базе данных, шаблоны и многое другое.
Сегодня программисты имеют десятки фреймворков разработки приложений и тысячи легкодоступных компонентов и библиотек. Пока вы изучаете один фреймворк, появляются три новых (и предположительно лучших) фреймворка для его замены.
А зачем вообще использовать фреймворк?
Легко понять, почему полезно использовать отдельные компоненты или пакеты, доступные разработчикам PHP. С пакетами кто-то другой отвечает за разработку и поддержку изолированного фрагмента кода; и теоретически этот человек более глубоко понимает отдельного компонента, чем вы.
Фреймворки, такие как Laravel, Symfony, Lumen и Slim — упаковывают набор сторонних компонентов вместе с пользовательским “клеем” фреймворка, таким как конфигурационные файлы, поставщики услуг, предписанные структуры каталогов и загрузочные программы приложений. Таким образом, преимущество использования фреймворка в целом заключается в том, что кто-то принял решение не только об отдельных компонентах для вас, но и о том, как эти компоненты должны сочетаться друг с другом.
“Я просто сделаю его сам.”
Допустим, вы запускаете новое веб-приложение без использования фреймворка. С чего вы начинаете? Ну, вероятно, надо маршрутизировать HTTP-запросы, поэтому теперь вам нужно оценить все доступные библиотеки HTTP-запросов и ответов и выбрать одну из них. Тогда вам придется выбрать маршрутизатор. Да, и вам, вероятно, придется настроить какую-то форму файла конфигурации маршрутов. Какой синтаксис он должен использовать? Куда он должен идти? А как насчет контроллеров? Где они живут, и как они загружены? Ну, вам, вероятно, нужен сервис-контейнер для разрешения контроллеров и их зависимостей. Но какой?
Кроме того, если вы потратите время, чтобы ответить на все эти вопросы и успешно создать свое приложение, как это повлияет на следующего разработчика? А как насчет того, что у вас есть четыре таких пользовательских фреймворковых приложения или дюжина, и вы должны помнить, где находятся контроллеры в каждом из них или каков синтаксис маршрутизации?
Последовательность и гибкость
Фреймворки решают эту проблему, предоставляя тщательно продуманный ответ на вопрос “какой компонент мы должны использовать здесь?” и гарантируя, что выбранные конкретные компоненты хорошо работают вместе. Кроме того, фреймворки предоставляют соглашения, которые уменьшают объем кода, который должен понимать разработчик, новичок в проекте — если вы понимаете, как работает маршрутизация в одном проекте Laravel, например, вы понимаете, как она работает во всех проектах Laravel.
Когда кто-то предписывает сворачивать вашу собственную структуру для каждого нового проекта, то на самом деле они защищают возможность контролировать то, что входит и не входит в основу вашего приложения. Это означает, что лучшие фреймворки не только обеспечат вам прочную основу, но и дадут вам свободу настройки в соответствии с вашими пожеланиями.
Так все же, почему Laravel?
Что отличает Laravel от других веб-фреймворков PHP? Скорость и простота, для начала. Эта платформа быстрой разработки приложений и ее экосистема инструментов позволяют быстро создавать новые сайты и приложения с чистым, читаемым кодом.
Потому что Laravel помогает вам воплотить ваши идеи в реальность без ненужного кода, используя современные стандарты кодирования, окруженный динамичным сообществом, с расширяющейся экосистемой инструментов.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.