Об этом курсе
Недавно просмотрено: 26,319

100% онлайн

Начните сейчас и учитесь по собственному графику.

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.

Промежуточный уровень

Прибл. 32 часа на выполнение

Предполагаемая нагрузка: 4 недели обучения, 6-8 часов в неделю...

Русский

Субтитры: Русский

100% онлайн

Начните сейчас и учитесь по собственному графику.

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.

Промежуточный уровень

Прибл. 32 часа на выполнение

Предполагаемая нагрузка: 4 недели обучения, 6-8 часов в неделю...

Русский

Субтитры: Русский

Программа курса: что вы изучите

Неделя
1
5 ч. на завершение

Тестирование и отладка программ

На первой неделе курса Вам предстоит узнать, чем отличается профессионал в программировании от любителя и чем отличается культурный программист от некультурного. После этого Вы познакомитесь с парадигмой структурного программирования и проектированием приложений "сверху-вниз". Завершим первую неделю знакомством с библиотеками для тестирования программ в Python и парадигмой разработки TDD.

...
11 видео ((всего 73 мин.)), 11 материалов для самостоятельного изучения, 6 тестов
11 видео
Профессионализм в программировании2мин
Культура программирования9мин
Выбор идентификаторов3мин
Структурное программирование5мин
Проектирование приложения «сверху-вниз»12мин
Зачем нужно тестировать программы13мин
Контрактное программирование3мин
Модульное тестирование и Test-Driven Development5мин
Библиотека doctest4мин
Библиотека unittest8мин
11 материала для самостоятельного изучения
Telegram и форум курса5мин
Mail.Ru Group5мин
Фонд развития онлайн-образования5мин
Краткое изложение PEP 820мин
Код программы рисования пейзажа10мин
Итеративная разработка с проектированием "сверху-вниз"10мин
Команда assert и библиотека PyContracts10мин
Пример разработки через тестирование10мин
Использование unittest10мин
Авторское решение задания10мин
Конспект по Неделе 110мин
5 практического упражнения
Тест на знание PEP 810мин
Преимущества структурного программирования4мин
Зачем тестировать программы12мин
Использование контрактов18мин
Тест на модульное тестирование10мин
Неделя
2
6 ч. на завершение

Объектно-ориентированное проектирование

В данной неделе курса Вы познакомитесь с основами объектно-ориентированного проектирования программ. Вы вспомните основные понятия, разберетесь с принципами и парадигмами, а также научитесь писать красивый и эффективный объектно-ориентированный код. Вам будут еще раз рассказаны основные понятия объектно-ориентированного программирования, затем вы подробно познакомитесь с его принципами и парадигмами. Далее Вы узнаете, как строить корректные иерархии классов и как записывать их на простом и наглядном языке UML. В заключение Вы узнаете, как отличить хороший объектно-ориентированный код от плохого и познакомитесь с основами рефакторинга.

...
9 видео ((всего 63 мин.)), 6 материалов для самостоятельного изучения, 6 тестов
9 видео
Отличие класса от объекта6мин
Отличие интерфейса класса от реализации5мин
Инкапсуляция и полиморфизм в Python6мин
SOLID принципы ООП6мин
Наследование в Python6мин
Абстрактные классы и библиотека abc8мин
UML-нотация и диаграммы классов8мин
Объектно-ориентированный рефакторинг программ6мин
6 материала для самостоятельного изучения
Парадигмы ООП10мин
SOLID-принципы10мин
Парадигма наследования10мин
Создание базовых классов: решение10мин
Решение рефакторинга кода10мин
Конспект по Неделе 210мин
4 практического упражнения
Объектно-ориентированное программирование18мин
Принципы и парадигмы ООП18мин
Построение схемы наследования18мин
UML-нотация12мин
Неделя
3
5 ч. на завершение

Паттерны проектирования (часть 1)

В данной неделе Вы познакомитесь с паттернами проектирования. Вы узнаете, что такое паттерны, где они применяются, какими бывают. Также будут разобраны 3 простейших паттерна проектирования: Adapter, Decorator и Observer. Вы самостоятельно реализуете данные паттерны для решения ряда практических задач.

...
8 видео ((всего 53 мин.)), 8 материалов для самостоятельного изучения, 4 тестов
8 видео
Классификация паттернов проектирования6мин
Задача паттерна Decorator4мин
Реализация декоратора класса12мин
Задача паттерна Adapter3мин
Реализация адаптера класса8мин
Задача паттерна Observer4мин
Реализация паттерна Наблюдатель9мин
8 материала для самостоятельного изучения
Паттерны проектирования10мин
Паттерн проектирования "Декоратор"10мин
Создание декоратора класса — решение от преподавателей10мин
Примеры паттерна Adapter10мин
Создание адаптера для класса — решение от преподавателей10мин
Использование паттерна Наблюдатель10мин
Паттерн Наблюдатель — решение от преподавателей10мин
Конспект по Неделе 310мин
1 практическое упражнение
Паттерны проектирования14мин
Неделя
4
6 ч. на завершение

Паттерны проектирования (часть 2)

В данной неделе Вы продолжите знакомство с паттернами проектирования. Мы разберём такие паттерны как Chain of Responsibility и Abstract Factory, после чего вы самостоятельно реализуете каждый из них. Закончим неделю изучением способа конфигурирования программ при помощи YAML.

...
8 видео ((всего 57 мин.)), 5 материалов для самостоятельного изучения, 3 тестов
8 видео
Краткая реализация паттерна Chain of Responsibility6мин
Практическая реализация паттерна Chain of Responsibility10мин
Задача паттерна Abstract Factory4мин
Краткая реализация паттерна Abstract Factory12мин
Практическая реализация паттерна Abstract Factory4мин
Язык YAML. Назначение и структура. PyYAML4мин
Использование YAML для конфигурирования паттерна Abstract Factory10мин
5 материала для самостоятельного изучения
Реализовать Chain of Responsibility — решение от преподавателей10мин
Реализуйте абстрактную фабрику — решение от преподавателей10мин
Продвинутый пример на использование YAML10мин
Парсинг YAML-файла — решение задания от преподавателей10мин
Конспект по Неделе 410мин
Неделя
5
5 ч. на завершение

Итоговый проект

На последней неделе курса Вам предстоит выполнить курсовой проект, в котором нужно реализовать сложную систему классов с использованием изученных паттернов проектирования.

...
1 материал для самостоятельного изучения, 1 тест
1 материал для самостоятельного изучения
Продолжение курса2мин
3.6
Рецензии: 26Chevron Right

Лучшие отзывы о курсе ООП и паттерны проектирования в Python

автор: BMNov 12th 2018

Не рекомендую проходить без прохождения предыдущего курса специализации. Не смотря на небольшую отзывчивость форума, курс получился вполне себе хороший. Прибавка к навыкам ощутимая.

Преподаватели

Avatar

Максимов Егор Сергеевич

Преподаватель
Кафедра информатики
Avatar

Хирьянов Тимофей Фёдорович

Старший преподаватель
Кафедра информатики
Avatar

Герцев Михаил Николаевич

Преподаватель
Кафедра информатики

О Московский физико-технический институт

Московский физико-технический институт (неофициально известный как МФТИ или Физтех) является одним из самых престижных в мире учебных и научно-исследовательских институтов. Он готовит высококвалифицированных специалистов в области теоретической и прикладной физики, прикладной математики, информатики, биотехнологии и смежных дисциплин. Физтех был основан в 1951 году Нобелевской премии лауреатами Петром Капицей, Николаем Семеновым, Львом Ландау и Сергеем Христиановичем. Основой образования в МФТИ является уникальная «система Физтеха»: кропотливое воспитание и отбор самых талантливых абитуриентов, фундаментальное образование высшего класса и раннее вовлечение студентов в реальную научно-исследовательскую работу. Среди выпускников МФТИ есть Нобелевские лауреаты, основатели всемирно известных компаний, известные космонавты, изобретатели, инженеры....

О Mail.Ru Group

Mail.Ru Group, международный бренд My.com – крупнейший холдинг в России по дневной мобильной аудитории. В рамках стратегии communitainment Mail.Ru Group развивает единую интегрированную платформу коммуникационных и развлекательных интернет-сервисов. Компании принадлежат лидирующий почтовый сервис, один из крупнейших порталов в рунете, крупнейшие русскоязычные социальные сети – ВКонтакте, Одноклассники и Мой Мир, а также два популярных в России и СНГ мессенджера – Агент Mail.Ru и ICQ....

О ФРОО

Фонд развития онлайн-образования объединяет образовательные стартапы, проекты в области EdTech и запускает собственные онлайн-программы в области машинного обучения, программирования, мобильной разработки, VR, дизайна и IT. Мы выстраиваем экосистему для обучения на всех стадиях жизненного цикла: от идеи и поиска средств на производство образовательной программы до поддержки, продаж и маркетинга. А сотрудничество с крупнейшими образовательными платформами позволяет запускать онлайн-курсы с максимальным эффектом и пользой для всех заинтересованных сторон....

О специализации ''Программирование на Python'

Программа состоит из четырех курсов, каждый из которых раскрывает определенную тему в Python. Сначала вы научитесь основным конструкциям языка и другим особенностям программирования на Python, далее углубитесь в объектно-ориентированное программирование. Научитесь создавать веб-сервисы и проводить анализ данных. Программа подойдет для студентов и профессионалов с начальными навыками программирования....
Программирование на Python

Часто задаваемые вопросы

  • Зарегистрировавшись на сертификацию, вы получите доступ ко всем видео, тестам и заданиям по программированию (если они предусмотрены). Задания по взаимной оценке сокурсниками можно сдавать и проверять только после начала сессии. Если вы проходите курс без оплаты, некоторые задания могут быть недоступны.

  • Записавшись на курс, вы получите доступ ко всем курсам в специализации, а также возможность получить сертификат о его прохождении. После успешного прохождения курса на странице ваших достижений появится электронный сертификат. Оттуда его можно распечатать или прикрепить к профилю LinkedIn. Просто ознакомиться с содержанием курса можно бесплатно.

Остались вопросы? Посетите Центр поддержки учащихся.