PTN23 Python
Продолжительность курса: 40 ак. ч.

Описание курса:
На курсе вы получите базовые навыки объектно-ориентированного программирования, познакомитесь с базовыми элементами языка Python. Получите необходимую подготовку для изучения проектирования пользовательского интерфейса на базе Qt/Python и веб-программирования на базе Python/Django.

Аудитория:
• Инженеры-программисты.

Необходимая подготовка:
Базовые знания в ООП.

Программа курса:

Модуль 1. Классы и объекты:
• Введение в объектно-ориентированное программирование (ООП);
• Понятие класса и экземпляра класса;
• Работа с данными, методами и свойствами экземпляра;
• Создание собственных классов;
• Принцип инкапсуляции;
• Атрибуты класса: чтение и изменение значений;
• Практическая работа. Разработка собственных классов — определение необходимых методов и свойств, создание нескольких объектов.

Модуль 2. Наследование:
• Роль наследования в ООП, понятие иерархии классов;
• Принцип утиной типизации;
• Базовые и производные классы;
• Функция isinstance и её применение;
• Создание производных классов;
• Использование экземпляров базовых и производных классов;
• Практическая работа. Расширение существующих классов с использованием механизма наследования.

Модуль 3. Абстрактные классы и полиморфизм:
• Полиморфизм. Принципы DRY и WET;
• Понятие абстракции в ООП;
• Знакомство с абстрактными классами в Python;
• Переопределение методов в дочерних классах;
• Полиморфные классы;
• Контейнерные типы данных;
• Модули стандартной библиотеки collections и collections.abc;
• Использование контейнерных типов;
• Практическая работа. Добавление новых методов в существующие классы с учетом полиморфизма.

Модуль 4. Алгоритмы сортировки и поиска в Python:
• Оценка сложности алгоритмов, нотация O(N);
• Основные алгоритмы сортировки и поиска;
• Этапы проектирования алгоритмов;
• Реализация эффективных алгоритмов поиска на Python;
• Оптимизация работы алгоритмов;
• Практическая работа. Реализация решателя судоку на Python. Решение 100 сложных головоломок.

Модуль 5. Алгоритмы поиска на графах:
• Введение в теорию графов, основные алгоритмы обработки графов;
• Представление графов в Python;
• Алгоритм поиска в ширину (BFS);
• Алгоритм поиска в глубину (DFS).
• Лабораторная работа:
• Реализация графа на языке Python;
• Практическая работа. Поиск кратчайшего пути между станциями Московского метрополитена.

Модуль 6. Работа с данными и SQLite:
• Проектирование структуры данных;
• Сохранение информации: список, запись, таблица;
• Объектно-реляционное отображение;
• Хранение пользовательских данных в СУБД SQLite;
• Использование SQLite для хранения данных графа метро;
• Практическая работа. Создание системы хранения данных о пользователях с помощью SQLite.

Модуль 7. Хранение данных вне программы:
• Понятие структуры данных;
• Применение структур для долгосрочного хранения информации;
• Сохранение и восстановление данных во внешнем виде;
• Использование модулей pickle и shelve;
• Практическая работа. Сохранение графа метро с помощью модуля pickle.

Модуль 8. Работа с JSON в Python:
• Знакомство с форматом JSON и его ролью в обмене данными;
• Сериализация и десериализация JSON в Python;
• Хранение данных вне программы с использованием JSON-файлов;
• Сохранение информации в файлы формата JSON;
• Практическая работа. Формирование графа станций Московского метрополитена на основе JSON-файла.


Окончательная цена указывается в договоре на обучение. Записаться на курс

Характеристики курса

  • Академ. часов: 40
  • Количество мест: 8
  • Направление: Курсы для ИТ-специалистов
  • Город: Москва, Пермь
  • Очно: 59900 ₽
  • Вебинар: 59900 ₽

Расписание

Ведётся набор
Записаться на курс