О курсе
Последовательно проходя урок за уроком, вы создадите основу фреймворка, дополните его обработчиками GET- и POST-запросов, декораторами-маршрутизаторами, встроенными классами-контроллерами, шаблонизатором, собственной ORM.
Вы настроите возможность работы с наследованием шаблонов и подшаблонами. Ваш фреймворк станет похожим на Django или Flask. Вы сможете самостоятельно выбрать вариант.
Вы поймете как изнутри устроены фреймворки и как они обеспечивают разработку веб-приложений. Вы пройдете путь от автора фреймворка до автора веб-приложения.
Чему вы научитесь?
- Что из себя представляют WSGI-фреймворки Django и Flask
- Как функционирует WSGI-фреймворк и какие требования к нему предъявляются
- Как создать фундамент WSGI-фреймворка
- Как реализовать обработку GET- и POST-запросов
- Как реализовать подключение HTML-шаблонов, а также настроить наследование шаблонов
- Как реализовать привязку шаблонов URL-адресов и контроллеров-обработчиков
- Как реализовать контроллеры в виде функций и CBV
- Как реализовать свою ORM
- Как реализовать собственный механизм обработки статики
- Как подключить статику стандартными средствами
- Как оптимизировать работу фреймворка
- Как выполнить развертывание фреймворка и веб-приложения
Содержание курса
Создаем основу фреймворка и начальный функционал веб-приложения
-
Введение
-
КАК работают wsgi-фреймворки
-
КАК создать свой wsgi-фреймворк
-
КАК реализовать связку маршрутов и обработчиков
-
КАК настроить простейшую шаблонизацию
-
КАК реализовать запуск проекта
-
Заключение
-
Практическое задание
Учим фреймворк обрабатывать GET- и POST-запросы
-
Введение
-
КАК разделить GET- и POST-запросы
-
обработка GET-запроса
-
обработка POST-запроса
-
Заключение
-
Практическое задание
Учим фреймворк работать с наследованием шаблонов и подшаблонами
-
Введение
-
КАК реализовать наследование шаблонов и подключение подшаблонов
-
немного о языке шаблонов
-
Заключение
-
Практическое задание
Учим фреймворк работать с моделями сущностей
-
Введение
-
Что такое классы сущностей и для чего они нужны
-
Как создать контроллеры для работы с моделями
-
Добавляем привязку к маршрутам и Добавляем шаблоны
-
запуск приложения
-
Заключение
-
Практическое задание
Учим фреймворк выполнять привязку URL-шаблонов к обработчикам
-
Введение
-
Что такое маршрутизация
-
КАК реализовать маршрутизацию через декоратор
-
Проверка работы приложения
-
Заключение
-
Практическое задание
Реализуем во фреймворке возможность написания обработчиков по CBV-подходу
-
Введение
-
Что такое встроенные классы-контроллеры (CBV)
-
Реализуем первый собственный встроенный класс-обработчик
-
применяем первый собственный встроенный класс-обработчик
-
Реализуем второй собственный встроенный класс-обработчик
-
Применяем второй собственный встроенный класс-обработчик
-
Дополняем проект необходимыми шаблонами
-
проверяем работу проекта
-
заключение.раздел 6
-
Практическое задание
Реализуем во фреймворке упрощенную ORM
-
Введение
-
что такое ORM-подход
-
реализуем класс-посредник для orm
-
реализуем класс-реестр для orm
-
реализуем необходимую структуру базы данных
-
реализуем класс для взаимодействия с базой данных
-
запуск приложения
-
Заключение
-
Практическое задание
-
Итоги курса
Подключаем статику
-
Введение
-
Что такое статика
-
Дорабатываем шаблонизатор
-
Дорабатываем фреймворк
-
Настраиваем файл settings.py
-
Подключаем статику
-
Заключение
-
Практическое задание
-
Создаем универсальный маппер
-
Введение
-
Для чего нужен универсальный маппер
-
Создаем универсальный маппер
-
Метод получения записи по идентификатору
-
Метод добавления записи в таблицу
-
Метод изменения записи в таблице
-
Метод удаления записи в таблице
-
Создаем мапперы классов-моделей
-
Дорабатываем классы-модели
-
Дорабатываем контроллеры для управления категориями
-
Дорабатываем контроллеры для управления студентами
-
Дополняем скрипт для создания таблиц базы данных
-
Проверяем работу приложения
-
Заключение
-
Практическое задание
-
Подключаем статику стандартными средствами и настраиваем вывод локации
-
Введение
-
О библиотеке WSGI_STATIC_MIDDLEWARE
-
Дорабатываем код фреймворка
-
Подключаем статику
-
Устраняем ошибки
-
Выводим информацию о локации пользователя
-
Заключение
-
Практическое задание
Оптимизируем обработку запросов
-
Введение
-
Подключаем классы-обработчики к проекту
-
Проверяем работу проекта
-
Практическое задание
Реализуем передачу параметров через URL-адрес
-
Введение
-
Дорабатываем код модуля main.py
-
Добавляем модуль routing.py
-
Разбираем код метода routes_process. часть 1
-
Разбираем код метода routes_process. часть 2
-
Разбираем код метода get_view
-
Создаем тестовый контроллер
-
Проверяем работу проекта
-
Заключение
Выполняем развертывание проекта
-
Введение
-
создаем и настраиваем файл Procfile
-
создаем файл requirements.txt
-
загружаем приложение на github. часть 1
-
загружаем приложение на github. часть 2
-
какой сервис хостинга выбрать
-
регистрируемся на heroku.com
-
регистрируемся на render.com
-
создаем приложение в Heroku. часть 1
-
создаем приложение в Heroku. часть 2
-
создаем приложение на Render
-
Заключение
Бонусный урок
-
Введение
-
Что такое DOCKER
-
Загружаем дистрибутив
-
Выполняем установку
-
Выполняем регистрацию на сервисе docker
-
Запускаем docker
-
Добавляем файлы REQUIREMENTS.TXT и DOCKERFILE к каждому сервису
-
Добавляем файл DOCKER-COMPOSE.YML в корень проекта
-
Корректируем ссылки в сервисах
-
Запускаем сервисы
-
Заключение
Рейтинги и обзоры студентов
Пока нет отзыва