Back-End Разработка
Курс по backend-разработке на Python предназначен для обучения основам и продвинутым аспектам создания серверной части веб-приложений. Программа курса охватывает широкий спектр тем, начиная от базового синтаксиса Python и заканчивая разработкой сложных веб-приложений с использованием современных фреймворков и технологий. Учащиеся научатся работать с различными базами данных, создавать API, обеспечивать безопасность приложений, а также использовать инструменты контейнеризации и автоматизации процессов разработки. Уровень: для начинающих.
Длительность курса
28 недель, 112 академических часов
2 занятия в неделю по 2 академических часа
600 000 тг за весь период обучения
Формат обучения
гибрид
Онлайн занятия проводятся в Google Meet / Zoom.
Оффлайн занятия проводятся в учебной аудитории школы.
Соотношение теории к практике - 50/50.
Система оценки успеваемости на курсе будет основана на
практических заданиях и проектах, которые студенты будут
выполнять в течение курса. Каждое задание/проект будет
оцениваться по нескольким критериям, таким как соответствие
требованиям, качество кода, использование современных
технологий и т.д. Максимальный балл - 10. Кроме того, на курсе
будут проводиться тесты и экзамены, чтобы проверить понимание
теоретической базы и навыков front-end разработки.
Критерий завершения обучения - средний балл выше 5/10,
или выше 50%.
Отбор студентов на курс будет проводиться на основе онлайн-анкетирования и просмотра эссе, в которых студенты должны указать свой интерес к разработке web приложений, а также обосновать, почему они хотят изучать эту тему. После этого студенты проходят собеседование. Мы ищем студентов, которые заинтересованы в разработке мобильных приложений, будет плюсом обладание базовыми знаниями программирования. Также мы оцениваем мотивацию и готовность студентов к обучению, а также их способность работать в команде. Курс Front-End разработки – это отличная возможность для тех, кто хочет научиться создавать web-приложения и получить практические навыки для работы в индустрии web разработки.
Программа обучения
- Неделя 1-4. Основы Python
- Неделя 5-8. Продвинутое программирование на Python
- Неделя 9-12. Основы веб-разработки
- Неделя 13-16. Фреймворки для веб-разработки на Python
- Неделя 17-20. Работа с базами данных
- Неделя 21-24. Продвинутые темы
- Неделя 25-28. Заключение курса
1. Введение в Python
Установка Python и настройка рабочего окружения.
Основы синтаксиса: комментарии, переменные, типы данных
(строки, числа).
Введение в IDE и интерпретатор Python.
2. Управляющие конструкции
Условные операторы: if, elif, else.
Циклы: for для перебора элементов коллекций, while для
выполнения кода до наступления условия.
3. Функции
Определение и вызов функций.
Параметры функций, аргументы, возвращаемые значения.
Области видимости переменных.
4. Модули и пакеты
Импорт стандартных библиотек.
Создание и использование собственных модулей.
Введение в виртуальные среды Python для изоляции
зависимостей.
5. Коллекции
Работа со списками, кортежами, множествами, словарями.
Операции над коллекциями: добавление, удаление, изменение,
доступ к элементам
6. Работа с файлами и исключениями
Чтение из и запись в файлы.
Обработка исключений с использованием try, except,
finally.
7. Объектно-ориентированное программирование (ООП)
Создание классов и объектов.
Наследование и композиция для повторного использования
кода.
8. Продвинутые ООП и другие концепции.
Инкапсуляция и полиморфизм.
Итераторы и генераторы для работы с последовательностями
данных. Декораторы для модификации функций
9. Введение в веб-разработку и HTTP
Клиент-серверная модель.
Основы HTTP: URL, методы запросов, статус-коды,
заголовки.
10. Основы HTML и CSS
Структура HTML-документа, теги, атрибуты.
Основы CSS для стилизации веб-страниц.
11. Формы HTML и их обработка на сервере
Создание форм для ввода данных пользователем.
Обработка данных форм на сервере с использованием Python.
12. Передача данных в вебе
Методы GET и POST для передачи данных.
Параметры строки запроса и тело запроса
13. Введение в Flask
Установка и настройка Flask.
Создание простого веб-приложения: маршрутизация и
представления
14. Маршрутизация, шаблоны и формы в Flask
Динамические URL и передача параметров в представления.
Использование шаблонизатора Jinja2 для генерации HTML.
Обработка данных форм.
15. Введение в Django
Установка и настройка Django.
Создание проекта и приложений в Django.
Понимание MTV (Model-Template-View) архитектуры.
16. Модели и админка в Django
Определение и работа с моделями Django для взаимодействия с
базой данных.
Использование Django админки для управления данными.
Миграции в Django для изменения схемы базы данных.
17. Основы SQL и реляционные базы данных
Введение в SQL: SELECT, INSERT, UPDATE, DELETE.
Реляционное проектирование баз данных.
18. ORM в контексте Flask и Django
Использование SQLAlchemy с Flask для работы с базами данных
через ORM.
Глубже с ORM в Django: отношения между моделями, запросы.
19. Введение в NoSQL базы данных
Понятие и примеры NoSQL баз данных.
Работа с MongoDB из Python
20. Практика работы с базами данных
Отправка запросов
Получение результатов
21. Создание RESTful API
Понятие RESTful сервисов.
Разработка API с использованием Flask или Django Rest
Framework
22. Основы тестирования
Введение в тестирование: зачем тестировать код.
Модульное тестирование в Python.
Тестирование веб-приложений
23. Асинхронное программирование
Понятие асинхронного программирования.
Использование asyncio в Python.
Асинхронные запросы и обработка данных
24. Безопасность и деплой
Основы безопасности веб-приложений: аутентификация,
авторизация, защита от XSS и CSRF.
Деплой приложения: обзор подходов к развертыванию
Python-приложений на примере Heroku или аналогичных
платформ.
25. Заключение курса
Обзор лучших практик (best practices)
Рекомендации по дальнейшему обучению и развитию навыков
Подготовка к финальному проекту и итоговому тестированию
26. Финальный проект. Начало. / Практика (по выбору)
27. Финальный проект. Разбор вопросов. / Практика
28. Финальный проект. Защита. / Практика