*Оплата в 3 этапа
(первый этап — до начала обучения, второй — в середине обучения, третий - в конце обучения)
Режим и формат обучения:
Расписание: 3 раза в неделю (ПН, СР, ПТ)
Формат: онлайн в режиме реального времени
Записи занятий доступны к пересмотру на протяжении всего обучения +неделю после, где можно пересмотреть непонятные моменты, справочная литература, небольшие тесты по пройденному материалу, ссылки для любознательного слушателя, различные онлайн-тренажеры для практики кодинга и не только.
Курс преподается на русском языке, материалы курса, презентации — на английском языке.
Курс для:
- студентов с небольшим или полным отсутствием предварительных знаний в области программирования;
- тех, кто программировал на других языках и хочет изучить основы Python в максимально сжатые сроки;
- тех, кого интересует backend-разработка, Data Science, BI, QA, но не знают с чего начать;
- всех, кто хочет получить практических опыт в разработке на Python.
Преподаватель курса:
Стефан Жаврид — бакалавр бизнес- информатики, магистр экономики. Работал на таких позициях как Business Analyst, Data Analyst, Data Scientist, аналитик бизнес-процессов, экономист. Сертифицированный инструктор — Cisco Networking Academy по CCNA, IoT, Big Data, Python.
Руководитель филиала Oracle Academy.
Более 4-х лет в частном образовании в качестве преподавателя, дизайнера образовательных траекторий, ментора.
После прохождения курса вы будете:
- Знать программировании на уровне, который позволит вам проектировать, писать, отлаживать, запускать программы на языке Python и понимать основные концепции разработки программного обеспечения.
- Знать более сложные аспекты программирования на Python, включая модули, пакеты, исключения, обработку файлов, а также общие методы программирования и объектно-ориентированным программирования (ООП).
- Уметь работать с разными типами файлов данных из разных источников и использовать их в проектах, требующих манипулирования данными и обработки файлов.
- Знать, как взаимодействовать с базами данных SQLite и манипулировать данными, используя базовые запросы к базе данных; создавать и обрабатывать файлы XML; читать, записывать и обрабатывать файлы csv; создавать и обрабатывать сообщения журнала из программ Python и управлять файлами конфигурации.
- Знать, как организовывать взаимодействие с внешними ресурсами и серверами, используя протокол HTTP и сокеты.
- Знать, как реализовать лучшие практики и соглашения по написанию качественного кода, используя язык Python. Узнаете, как писать более качественный и эффективный код, а так же, как избежать самых распространенных ошибок и недочетов, как их устранить, опираясь на лучшие практики.
Необходимая подготовка:
- умение пользоваться персональным компьютером;
- базовые знания математики и логики;
- знание основ алгоритмизации;
- знание английского языка на уровне чтения технической документации.
По окончании курса каждый слушатель получит:
- Сертификат Института.
- Выполнять все практические задания и сдавать их в срок.
- Создать итоговый проект.
Программа курса:
Модуль 1. Введение.
- Знакомство;
- Введение в профессию разработчика.
Модуль 2. Введение в разработку ПО.
- Жизненный цикл разработки ПО (SDLC);
- Фазы жизненного цикла разработки ПО;
- Роль программиста и других участников проекта в рамках SDLC;
- Шаблоны проектирования программного обеспечения (Observer, MVC).
Модуль 3. Введение в Python и программирование.
- Основы программирования, как выполняется программа, как работает и из чего состоит язык программирования;
- Разница между компиляцией и интерпретацией;
- Что такое Python, его место среди других языков программирования и что отличает разные версии Python.
Модуль 4. Типы данных, переменные, базовые операции ввода-вывода, базовые операторы.
- Как писать и запускать простые программы на Python;
- Что такое литералы, операторы и выражения Python;
- Что такое переменные и как они работают в Python;
- Как выполнять основные операции ввода и вывода.
Модуль 5. Системы контроля версий. Разработка ПО используя Git.
- Системы контроля версий, их цели, задачи, типы, преимущества и недостатки;
- Git - что это, как установить, как использовать;
- Что такое репозитории, их виды и различия;
- Что такое брэнчинг (branching);
- Реализации Git в виде Github;
- Основные команды Git;
- Как работать с файлами;
- Как работать с репозиториями;
- Как работать с брэнчами.
Модуль 6. Логические значения, условные выражения, циклы, списки и обработка списков, логические и побитовые операции.
- Тип данных Boolean;
- Операторы;
- Условные операторы (if, if-else, if-elif, else);
- Циклы (while, for);
- Логические и побитовые операции в Python;
- Списки в Python (построение, индексация и слайсинг; манипулирование содержимым);
- Как отсортировать список с помощью базовых алгоритмов сортировки и другими методами;
- Многомерные списки.
Модуль 7. Функции, кортежи, словари, исключения и обработка данных.
- Структура кода и понятие функции;
- Вызов функции и возврат результата из функции;
- Области видимости (локальная, глобальная, нелокальная) и затенение переменных;
- Ограничения, накладываемые областями видимости;
- Кортежи и их назначение, создание и использование кортежей;
- Словари и их назначение, создание и использование словарей;
- Lambda выражения;
- Исключения - оператор try и предложение except, встроенные исключения Python, тестирование и отладка кода.
Модуль 8. Модули, пакеты и PIP.
- Импорт и использование модулей Python;
- Использование некоторых из наиболее полезных модулей стандартной библиотеки Python;
- Создание и использование модулей Python;
- Создание и использование пакетов Python;
- PIP и способы его использования для установки и удаления готовых пакетов из PyPI.
Модуль 9. Строки, методы строк и списков, исключения.
- Символы, строки и стандарты кодирования;
- Строки против списков - сходства и различия;
- Методы для работы со строками, списками;
- Способы как обрабатывать ошибки runtime;
- Управление потоком ошибок с помощью try и except;
- Иерархия исключений.
Модуль 10. Основы объектно-ориентированного программирования.
- Основные концепции объектно-ориентированного программирования (ООП);
- Различия между процедурным и объектным подходами (приемущества и недостатки);
- Классы, объекты, свойства и методы;
- Проектирование классов и создание объектов;
- Наследование и полиморфизм;
- Композиция;
- MRO - множественное наследование;
- Проблемы множественного наследования;
- Порядок разрешения методов;
- Diamond Problem;
- Исключения как объекты.
Модуль 11. Генераторы, итераторы, замыкание, работа с файлами, STL.
- Генераторы, итераторы и замыкания;
- Как работает генератор и итератор;
- Как создать собственные генераторы и итераторы;
- Работа с файловой системой, деревом каталогов и файлами;
- Модули стандартной библиотеки (STL).
Модуль 12. Продвинутое объектно-ориентированное программирование.
- Классы, экземпляры классов, атрибуты классов, методы классов, а также как работать с данными классов и экземпляров;
- Декораторы;
- Абстрактные классы, переопределение методов, статические и классовые методы, специальные методы;
- Наследование, полиморфизм, подклассы и инкапсуляция;
- Обработки исключений;
- Метаклассы.
- Базовый синтаксис SQL;
- СУБД SQLite - взаимодействие с базами данных SQLite;
- XML - создание и обработка файлов XML;
- CSV - чтение и запись файла CSV;
- Сериализация и десериализация объектов;
- Logging - основы ведения журнала событий;
- Configparser - парсер конфигурационного файла.
- Основные концепции сетевого программирования, модуль requests, клиент-серверного взаимодействия;
- Что такое API;
- Что такое REST;
- Как использовать и создавать сокеты в Python, а также как устанавливать и закрывать соединение с сервером;
- Что такое файлы JSON и XML и как их можно использовать в сетевой коммуникации;
- Отличия http и https;
- Что такое HTTP-методы и как что-то сказать в HTTP;
- Как создать образец тестовой среды используя Node.js;
- Что такое CRUD;
- Как создать простой клиент REST и как получать и удалять данные с сервера, добавлять к нему новые данные и обновлять уже существующие данные.
- Основы тестирования;
- Модульное (Unit) тестирование;
- Модули pytest и unittest;
- Test Driven Development (TDD).
- Дзен Python;
- Руководство по стилю для кода Python;
- Cоглашения о строках документации;
- Как избежать типичных ошибок и ошибок при написании кода;
- Как писать элегантный и эффективный код;
- Линтеры.
Отзывы cлушателей курса:
Курс оставил только приятные ощущения: много практики, приятный и толковый преподаватель, гибкий график сдачи домашних заданий, много полезных материалов от преподавателя, удобное расписание и форма проведения онлайн обучения.
Савко Вадим
Курс был довольно интересный. Программа была построена системно. На протяжении всего времени преподаватель поддерживал нас и давал советы, а так же прикреплял интересные источники, где можно было ознакомиться с дополнительной информацией. Любые возникающие вопросы сразу же были закрыты. Курсом осталась очень довольна :)
Виктория Дикевич
Цель курса направлена на совсем начинающих программистов, для которых это первый язык программирования. Сам курс весьма информативен, охватывает большинство возможностей языка Python, дает представление о сути программирования, ООП, клиент-сервер взаимодействии, работе с БД.
Андрей Попок
Получить дополнительную информацию:
+375 29 690 40 33, HPaulovich@instituteiba.by