*Оплата в 3 этапа
(первый этап — до начала обучения, второй — в середине обучения, третий - в конце обучения)
Режим и формат обучения:
Расписание: 3 раза в неделю (ПН, СР, ПТ)
Формат: онлайн в режиме реального времени
Записи занятий доступны к пересмотру на протяжении всего обучения + неделю после, где можно пересмотреть непонятные моменты, справочная литература, небольшие тесты по пройденному материалу, ссылки для любознательного слушателя, различные онлайн-тренажеры для практики кодинга и не только.
Курс для:
- Новичков, которые только начинают знакомство с программированием и хотят освоить Python с нуля.
- Студентов и школьников, мечтающих строить карьеру в IT.
- Переквалифицирующихся специалистов из других областей, стремящихся войти в сферу разработки.
- Начинающих аналитиков, которым важно автоматизировать работу и владеть инструментами обработки данных.
- Блогеров, предпринимателей, маркетологов, которым нужно писать скрипты, собирать информацию с сайтов и работать с API.
- Будущих backend-разработчиков, желающих научиться создавать веб-приложения и работать с базами данных.
- Тех, кто хочет понимать ИИ и применять его в реальных задачах.
- Всех, кто хочет прокачать логику, креативность и аналитическое мышление через программирование.
Преподаватель курса:

Сертифицированный инструктор в Cisco Networking Academy по направлениям: CCNA, DevNet, IoT и Big Data, Python, Linux.
Руководитель филиала Oracle Academy.
Сертификаты: ICAgile Certified Professional (ICAgile), CCNA (Cisco), PCEP (Python Institute), Docker (IBM), Cybersecurity (Cisco).
Бакалавр (бизнес-информатика) и Магистр (экономика).
Более 9 лет в частном образовании для взрослых и детей в качестве преподавателя, дизайнера образовательных траекторий, ментора.
После прохождения курса вы будете уметь:
- Писать собственные программы и автоматизировать задачи на Python
- Создавать веб-приложения и работать с API
- Проектировать архитектуру кода и применять популярные паттерны
- Работать с базами данных, системами логирования и конфигурациями
- Уверенно использовать Git, проводить код-ревью и писать юнит-тесты
- Создавать эффективный, читаемый и профессиональный код, соответствующий стандартам PEP8
- Применять ИИ для анализа и решения задач
Среди практических заданий и тестовых вопросов рассматриваются задачи из реальных собеседований и тестовых заданий на позицию Intern/Trainee/Junior разработчика на Python.
Необходимая подготовка:
- умение пользоваться персональным компьютером;
- базовые знания математики и логики.
По окончании курса каждый слушатель получит:
Для успешного освоение курса требуется:
- Выполнять все практические задания и сдавать их в срок.
- Создать итоговый проект.
Программа курса:
Модуль 1. Знакомство с профессией. Введение в разработку ПО.
- Знакомство;
- Введение в профессию разработчика;
- Жизненный цикл разработки ПО (SDLC);
- Фазы жизненного цикла разработки ПО;
- Роль программиста и других участников проекта в рамках SDLC.
Модуль 2. Введение в Python и программирование. Базовые типы данных, переменные, операции ввода-вывода, операторы.
- Как писать и запускать простые программы на Python;
- Базовые типы данных int float str;
- Что такое литералы, операторы и выражения Python;
- Что такое переменные и как они работают в Python;
- Как выполнять основные операции ввода и вывода.
Модуль 3. Логические значения, условные выражения, циклы, списки и обработка списков, логические и побитовые операции.
- Основы программирования, как выполняется программа, как работает и из чего состоит язык программирования;
- Разница между компиляцией и интерпретацией;
- Что такое Python, его место среди других языков программирования и что отличает разные версии Python;
- Тип данных bool;
- Операторы сравнения;
- Условные операторы (if, if-else, if-elif, else);
- Тернарный оператор (if-else);
- Match-case;
- Циклы (while, for);
- break и continue;
- Оператор принадлежности in;
- Логические операторы and, not, or;
- Битовые операторы & | ~ ^, тип данных bin;
- Изменяемость объектов;
- Типы данных list и set, frozenset (построение, индексация и слайсинг; манипулирование содержимым);
- Однострочники;
- Как отсортировать список с помощью базовых алгоритмов сортировки и другими методами;
- Многомерные списки;
- Способы копирования copy, deepcopy.
Модуль 4. Строки, методы строк и списков, исключения.
- Символы, строки и стандарты кодирования;
- Unicode, UTF-8.
Модуль 5. Системы контроля версий. Разработка ПО используя Git.
- Системы контроля версий, их цели, задачи, типы, преимущества и недостатки;
- Git - что это, как установить, как использовать;
- Что такое репозитории, их виды и различия;
- Что такое брэнчинг (branching);
- Github;
- Основные команды Git (clone, add, commit, push);
- Как работать с файлами;
- Как работать с репозиториями;
- Как работать с брэнчами.
Модуль 6. Функции, кортежи, словари
- DRY, KISS;
- Структура кода и понятие функции;
- Вызов функции и возврат результата из функции;
- Области видимости и затенение переменных;
- Ограничения, накладываемые областями видимости;
- Тип данных tuple, их назначение, создание и использование кортежей;
- Тип данных dict, их назначение, создание и использование словарей;
- Рекурсивные алгоритмы;
- Debugging;
- Однострочники;
- Способы как обрабатывать ошибки runtime;
- Управление потоком ошибок с помощью try и except;
- Иерархия исключений.
Модуль 7. Модули, пакеты и PIP.
- Импорт и использование модулей Python;
- Использование некоторых из наиболее полезных модулей стандартной библиотеки Python;
- Создание и использование модулей и пакетов Python;
- Модуль timeit;
- PIP и способы его использования для установки и удаления готовых пакетов из официального репозитория PyPI.
Модуль 8. Исключения и Unit-тестирования.
- Исключения - оператор try и предложение except, встроенные исключения Python, тестирование и отладка кода;
- Конструкция try/except;
- Выражения raise, assert;
- Debugging;
- Тестирование ПО;
- Основы unit-тестирования;
- Модуль pytest;
- Покрытие кода тестами;
- Модуль pytest-cov;
- Модуль сoverage;
- Doctest;
- Процесс код-ревью.
Модуль 9. Объектно-ориентированного программирования.
- Основные концепции объектно-ориентированного программирования (ООП);
- Различия между процедурным и объектным подходами (приемущества и недостатки);
- Классы, объекты, свойства и методы;
- Проектирование классов и создание объектов;
- Абстракция, наследование, полиморфизм, инкапсуляция в Python;
- Порядок разрешения методов (MRO);
- Композиция;
- Множественное наследование;
- Проблемы множественного наследования (Diamond Problem);
- Исключения как объекты;
- Магические (dunder/special) методы;
- Методы: экземпляров, классовые, абстрактные;
- Создание кастомных исключения;
- Unit-тесты - фикстуры, исключения.
Модуль 10. Продвинутый Python.
- property;
- args, kwargs;
- lambda функции;
- итераторы;
- Выражения и функции генераторы;
- Функции - map, filter, zip, all, any, enumerate, reduce;
- Замыкание;
- Метапрограммирование.
Модуль 11. Генераторы, итераторы, замыкание, работа с файлами, STL.
- Генераторы, итераторы и замыкания;
- Как работает генератор и итератор;
- Как создать собственные генераторы и итераторы;
- Работа с файловой системой, деревом каталогов и файлами;
- Модули стандартной библиотеки (STL).
Модуль 12. Паттерны и работа с файлами, базой данных.
- Паттерны проектирования (Декоратор и прочие);
- XML, CSV, JSON - создание и обработка файлов;
- Сериализация и десериализация объектов;
- Logging - основы ведения журнала событий;
- Configparser - парсер конфигурационного файла;
- Базы данных;
- Базовый синтаксис SQL;
- СУБД SQLite;
- Взаимодействие с базами данных SQLite (DB-API и ORM).
Модуль 13. Работа с API. Основы Flask.
- Основы сетей;
- Основные концепции сетевого программирования, модуль requests, клиент-серверного взаимодействия;
- Что такое API;
- Что такое REST;
- Отличия http и https;
- Что такое HTTP-методы и как что-то сказать в HTTP;
- Что такое CRUD;
- Как создать простой клиент REST и как получать и удалять данные с сервера, добавлять к нему новые данные и обновлять уже существующие данные;
- Основы работы с веб-фреймворком Flask. Flask restful. Jinja. SQLite.
Модуль 14. Лучшие практики, стандарты и соглашения о том как писать хороший код на языке Python.
- Test Driven Development (TDD).
- Дзен Python;
- Руководство по стилю для кода Python;
- Документация проекта.
- Соглашения о строках документации;
- Как избежать типичных ошибок и ошибок при написании кода;
- Как писать элегантный и эффективный код;
- Линтеры.
Модуль 16. Искусственный интеллект (ИИ) для программиста
- Что такое ИИ?
- Этика использовании ИИ?
- Практика использования ИИ для решения практических задач.
Экскурс по основным направлениям в IT связанным c Python. Рекомендации по выбору
Модуль 17. Куда двигаться дальше?
- Подведение итогов обучения.
- Секция Вопрос-ответ.
- Экскурс по основным направлениям в IT связанным c Python. Рекомендации по выбору.
Отзывы cлушателей курса:
Курс оставил только приятные ощущения: много практики, приятный и толковый преподаватель, гибкий график сдачи домашних заданий, много полезных материалов от преподавателя, удобное расписание и форма проведения онлайн обучения.
Савко Вадим
Курс был довольно интересный. Программа была построена системно. На протяжении всего времени преподаватель поддерживал нас и давал советы, а так же прикреплял интересные источники, где можно было ознакомиться с дополнительной информацией. Любые возникающие вопросы сразу же были закрыты. Курсом осталась очень довольна :)
Виктория Дикевич
Цель курса направлена на совсем начинающих программистов, для которых это первый язык программирования. Сам курс весьма информативен, охватывает большинство возможностей языка Python, дает представление о сути программирования, ООП, клиент-сервер взаимодействии, работе с БД.
Андрей Попок
Получить дополнительную информацию:
+375 29 690 40 33, HPaulovich@instituteiba.by