1. Знакомство. Введение в разработку ПО на Python: Git, IDE, основные свойства языка
- Немного истории
- Что такое программирование?
- Основы работы в IDE PyCharm.
- Первая программа на Python (Hello World). Минимальный синтаксис.
2. Синтаксис Python
- Базовый синтаксис Python.
- Числовые типы данных. Математические операции.
- Логический тип. Логические операции.
- Условный оператор if, elif, else. Тернарный оператор.
- Цикл for. Цикл while. Операторы break и continue. Else для цикла.
- Функции (базовые понятия). Встроенные функции.
- Строки. Обращение к подстрокам. Форматирование строк.
- ДЗ:
- Разработать функции (несколько по пройденной теме).
3. Модули и пакеты
- Оператор from … import.
- Пути поиска модулей.
- Пакеты.
4. Тестирование (часть 1)
- Что такое тестирование ПО?
- Популярные пакеты Python для тестирования ПО.
- Основы PyTest.
- Примеры использования PyTest.
- ДЗ:
- С этого момента все выполненные ДЗ рекомендуется покрывать юнит-тестами.
5. Структуры данных
- Списки (list).
- Кортежи (tuple).
- Множества (set).
- Словари (dict).
- Функция zip.
- Выражения-генераторы. Генераторы списков, множеств и словарей.
- ДЗ:
- Разработать функции (несколько по каждой пройденной подтеме).
6. Файлы
- Основные принципы работы с файлами в Python.
- Режимы чтения/записи файла (files IO).
- Чтение/Запись txt файла.
- Пакет pickle.
- Пакет json.
- ДЗ:
- Разработать функции (несколько по каждой пройденной подтеме).
7. Объектно-ориентированное программирование (ООП)
- ООП. Основные понятия. Принципы.
- Классы и экземпляры.
- Методы и атрибуты класса.
- Операторы (арифметические) и ООП.
- Итераторы и генераторы.
- Наследование.
- ООП в Python.
- Проект:
- Начало разработки примера проекта.
- ДЗ:
- Разработать классы (несколько по каждой пройденной подтеме).
- Начать разрабатывать проект.
8. Функции
- Функции. Основные понятия.
- Области видимости.
- Аргументы функции.
- Рекурсия.
- Анонимные функции.
- Проект:
- Работаем над проектом с учетом новых знаний.
- ДЗ:
- Разработать функции (несколько по каждой пройденной подтеме).
- Доработать проект (с учетом новых знаний).
9. Исключения
- Что такое исключение (exception) в программировании.
- Как вызвать (raise) исключение.
- Как корректно обрабатывать исключения.
- Проект:
- Работа над проектом с учетом новых знаний.
- ДЗ:
- Доработать проект (с учетом новых знаний).
10. Декораторы
- Декораторы для функций.
- Декораторы для методов.
- Декораторы с аргументами.
- Статические методы и методы класса (декораторы @classmethod и @staticmethod).
- Свойства (декоратор @property).
- Проект:
- Работа над проектом с с учетом новых знаний.
- ДЗ:
- Доработать проект (с учетом новых знаний).
11. Виртуальные среды
- pip
- requirements.txt
- VirtualEnv и VirtualEnvWrapper
- Pipenv
- Anaconda (Conda)
12. Telegram Bot
- Регистрация бота.
- API.
- Бот на основе библиотеки PyTelegramBotAPI (Telebot).
- Проект:
- Работа над проектом проекта с учетом новых знаний.
- ДЗ:
- Доработать проект (с учетом новых знаний).
13. Тестирование (часть 2)
- Фикстуры.
- PyTest: параметризация.
- Верификация и валидация.
- PyTest: Class setup & teardown.
- PyTest: перехват исключений.
- Проект:
- Работа над проектом с учетом новых знаний.
- ДЗ:
- Доработать проект (с учетом новых знаний).
14. Презентации проектов
Contacts