Online Course
Основы разработки на C++: жёлтый пояс
Moscow Institute of Physics and Technology and Yandex via Coursera
-
20
-
- Write review
Overview
Class Central Tips
- целочисленные типы языка C++
- пары и кортежи
- шаблоны функций
- наследование и полиморфизм
- итераторы и стандартные алгоритмы
- распределение кода по нескольким файлам
Кроме того, в курсе рассмотрено использование юнит-тестов для отладки программ и обеспечения надёжности кода, а также продемонстрировано, как, пользуясь знаниями только "Белого" и "Жёлтого" поясов, разработать свой собственный unit test framework.
Так же, как и в "Белом поясе", в конце курса вас ждёт финальный проект. В "Белом поясе" надо было самостоятельно реализовать простое хранилище данных с возможностью добавления, удаления и поиска. В "Жёлтом поясе" это хранилище надо будет усовершенствовать, добавив поддержку более сложных запросов.
Курс разработан ведущими специалистами Яндекса и преподавателями Школы анализа данных. За их плечами – годы разработки сервисов поиска, рекламы и инфраструктуры. Кроме того в подготовке заданий участвовали сотрудники Яндекса и студенты Школы анализа данных:
- Александр Гришин
- Алексей Аверченко
- Максим Филипов
- Даниил Петров
- Евгений Шавлюгин
- Владислав Виноградов
- Алексей Боголюбский
- Дмитрий Кузьмичёв
- Иван Качалкин
- Андрей Полушин
- Андрей Корнеев
- Константин Меренков
Syllabus
-Материалы этой недели знакомят вас с возможностями языка C++, не рассмотренными в курсе «Белый пояс по C++». Сначала рассмотрены различные целочисленные типы языка C++, рассказано, чем они отличаются, а также даны практические рекомендации по их применению. Затем рассматриваются пары и кортежи как способ упростить возврат нескольких значений из функций и создание операторов сравнения для своих классов. Наконец, мы расскажем о шаблонах функций. «Когда будут шаблоны?» был одним из самых частых вопросов, которые нам задавали слушатели «Белого пояса». Тема эта обширная и сложная, поэтому мы начинаем с малого — рассказываем о шаблонах функций: что это такое, для чего они нужны и как их создавать.
Тестирование и отладка
-Эта неделя посвящена использованию юнит-тестов для тестирования и отладки программ. На примере мы продемонстрируем, как юнит-тесты помогают в поиске и устранении ошибок, а также что нужно делать, чтобы покрыть свой код юнит-тестами. Затем с помощью накопленных на данный момент знаний мы разработаем свой собственный фреймворк для создания юнит-тестов, которым вы сможете пользоваться в своих программах.
Распределение кода по файлам
-Весь код, который мы прежде писали в нашем курсе, всегда находился в одном файле. Естественно, реальные большие проекты не пишутся в одном файле. В материалах этой недели мы рассмотрим, как распределять код программ на C++ на несколько файлов. Мы расскажем, что такое заголовочные файлы и файлы с реализациями, как работает директива #include и как выполняется сборка многофайлового проекта. Кроме того, мы поговорим о проблемах, которые возникают в больших проектах и расскажем, как их решать.
Итераторы, алгоритмы и контейнеры
-В курсе "Белый пояс по C++" мы познакомились с некоторыми стандартными алгоритмами: count, count_if и sort. Конечно же, библиотека C++ гораздо богаче и содержит значительно больше стандартных алгоритмов, которые позволяют сделать ваш код короче, понятнее и надёжнее. Чтобы их освоить, сначала нужно узнать, что такое итераторы. С этого мы и начнём четвёртую неделю. Затем рассмотрим стандартные алгоритмы, в которых используются итераторы. Наконец, мы познакомим вас с новыми стандартными контейнерами: деком и очередью.
Наследование и полиморфизм
-Объектно-ориентированное программирование стоит на трёх китах: инкапсуляция, наследование и полиморфизм. О том, какими средствами достигается инкапсуляция в C++, мы узнали в "Белом поясе по C++". Эта неделя расскажет вам о двух оставшихся "китах": наследовании и полиморфизме. Мы не только покажем, как именно в C++ унаследовать один класс от другого и создать набор полиморфных объектов, но и применим полученные знания на практике - создадим программу-калькулятор, которая поддерживает работу с переменными.
Курсовой проект
-Настало время закрепить все полученные на курсе знания, применив их в финальном проекте. Задача этой недели является развитием финального проекта курса "Белый пояс по C++". Вам точно так же надо будет разработать базу данных, которая хранит набор событий и поддерживает различные операции с ним.
Taught by
Лежанкин Иван Андреевич, Парамонов Евгений Анатольевич, Полднев Антон Вячеславович and Шишков Илья Иванович
Related Courses
-
Искусство разработки на современном C++
Moscow Institute of Physics and Technology
-
Основы разработки на C++: белый пояс
Moscow Institute of Physics and Technology
-
Основы микроэкономики (Microeconomics Principles)
Higher School of Economics
5.0 -
Портфельные инвестиции: активные и пассивные стратегии
Higher School of Economics
-
Основы разработки на C++: красный пояс
Moscow Institute of Physics and Technology, Yandex
-
Введение в iOS-разработку
Moscow Institute of Physics and Technology, e-legion
Reviews
0.0 rating, based on 0 reviews