Разработка серверной части web-приложения «Учет тренировок» с использованием React и Redux
ВведениеSPA или Single Page Application (Одностраничное приложение) — это одностраничное веб-приложение, которое загружается на одну HTML-страницу. Благодаря динамическому обновлению с помощью JavaScript, во время использования не нужно перезагружать или подгружать дополнительные страницы. На практике это означает, что пользователь видит в браузере весь основной контент, а при прокрутке или переходах на другие страницы, вместо полной перезагрузки нужные элементы просто подгружаются.
В процессе работы пользователю может показаться, что он запустил не веб-сайт, а десктопное приложение, так как оно мгновенно реагирует на все его действия, без задержек и «подвисаний».
Такого эффекта удается добиться с помощью продвинутых фреймворков JavaScript: Angular, React, Vue.
Содержание
Введение 3
1 Средства разработки 4
1.1 Использованные Библиотеки 4
1.2 Используемое ПО 4
2 Технология разработки 6
3 Реализация поставленной задачи 7
3.1 Разработка основных таблиц 7
3.2 Разработка основных маршрутов серверной части 13
3.3 Разработка основных контроллеров для маршрутов 14
3.4 Разработка основных Requests для контроллеров 21
3.5 Разработка helpers 25
3.6 Разработка intercepters в React приложении 25
3.7 Разработка Context в React приложении 26
3.8 Разработка Router в React приложении 27
4 Демонстрация работы 29
4.1 Предварительная настройка 29
4.2 Выполнение запросов на различные маршруты 30
4.2.1 Запрос на регистрацию 30
4.2.2 Запрос на логин 31
4.2.3 Запрос на получение данных о программах тренировок 32
4.2.4 Получение данных о упражнениях 32
4.2.5 Получение данных о выполненных упражнениях 33
4.2.6 Создание программы тренировок 33
4.2.7 Создание упражнения 34
4.2.8 Создание выполненного упражнения 34
4.3 Вывод о маршрутах 35
Заключение 36
Список использованных источников 37
Приложение 38
1 Laravel – документация [Электронный ресурс] // URL: https://laravel.com/docs/10.x
2 Laravel- Passport - официальная документация [Электронный ресурс] // URL: https://laravel.com/docs/10.x/passport#main-content
3 Axios – документация [Электронный ресурс] // URL: https://axios-http.com/docs/intro
4 React-Router-Dorm v6 – документация [Электронный ресурс] // URL: https://reactrouter.com/en/main
Laravel - это бесплатный и открытый фреймворк для разработки веб-приложений на языке программирования PHP. Он предоставляет набор инструментов и компонентов, которые упрощают и ускоряют процесс разработки, позволяя разработчикам создавать мощные и элегантные веб-приложения с минимальными усилиями.
Основные особенности Laravel:
- Элегантный синтаксис: Laravel предлагает чистый и выразительный
синтаксис, который делает код понятным и легким для чтения. Он основан на концепциях объектно-ориентированного программирования (ООП) и следует принципам хорошего программирования.
- Маршрутизация и контроллеры: Laravel предоставляет мощные инстру-
менты для определения маршрутов и связывания их с соответствующими контроллерами. Это позволяет обрабатывать запросы и выполнять нужные действия в приложении.
- Модели и ORM: Laravel предоставляет ORM (Object-Relational Mapping)
под названием Eloquent, который облегчает работу с базой данных. Он позволяет разработчикам взаимодействовать с базой данных с использованием простого и интуитивно понятного синтаксиса, а также предоставляет множество функций для работы с данными.
- Пакетный менеджер Composer: Laravel интегрирует Composer – попу-
лярный пакетный менеджер для PHP. Composer позволяет управлять зависимостями приложения и автоматически загружать необходимые библиотеки и компоненты.