subject

Coursera: Основы разработки на C++: жёлтый пояс

 with  Лежанкин Иван Андреевич, Парамонов Евгений Анатольевич, Полднев Антон Вячеславович and Шишков Илья Иванович
Этот курс является продолжением курса "Основы разработки на C++: белый пояс". В нём преподаватели продолжают знакомить вас с возможностями языка C++. В курсе рассмотрены:
- целочисленные типы языка C++
- пары и кортежи
- шаблоны функций
- наследование и полиморфизм
- итераторы и стандартные алгоритмы
- распределение кода по нескольким файлам

Кроме того, в курсе рассмотрено использование юнит-тестов для отладки программ и обеспечения надёжности кода, а также продемонстрировано, как, пользуясь знаниями только "Белого" и "Жёлтого" поясов, разработать свой собственный unit test framework.

Так же, как и в "Белом поясе", в конце курса вас ждёт финальный проект. В "Белом поясе" надо было самостоятельно реализовать простое хранилище данных с возможностью добавления, удаления и поиска. В "Жёлтом поясе" это хранилище надо будет усовершенствовать, добавив поддержку более сложных запросов.

Курс разработан ведущими специалистами Яндекса и преподавателями Школы анализа данных. За их плечами – годы разработки сервисов поиска, рекламы и инфраструктуры. Кроме того в подготовке заданий участвовали сотрудники Яндекса и студенты Школы анализа данных:
- Александр Гришин
- Алексей Аверченко
- Максим Филипов
- Даниил Петров
- Евгений Шавлюгин
- Владислав Виноградов
- Алексей Боголюбский
- Дмитрий Кузьмичёв
- Иван Качалкин
- Андрей Полушин
- Андрей Корнеев
- Константин Меренков

Syllabus

Целочисленные типы, кортежи, шаблонные функции
Материалы этой недели знакомят вас с возможностями языка C++, не рассмотренными в курсе «Белый пояс по C++». Сначала рассмотрены различные целочисленные типы языка C++, рассказано, чем они отличаются, а также даны практические рекомендации по их применению. Затем рассматриваются пары и кортежи как способ упростить возврат нескольких значений из функций и создание операторов сравнения для своих классов. Наконец, мы расскажем о шаблонах функций. «Когда будут шаблоны?» был одним из самых частых вопросов, которые нам задавали слушатели «Белого пояса». Тема эта обширная и сложная, поэтому мы начинаем с малого — рассказываем о шаблонах функций: что это такое, для чего они нужны и как их создавать.

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

Распределение кода по файлам
Весь код, который мы прежде писали в нашем курсе, всегда находился в одном файле. Естественно, реальные большие проекты не пишутся в одном файле. В материалах этой недели мы рассмотрим, как распределять код программ на C++ на несколько файлов. Мы расскажем, что такое заголовочные файлы и файлы с реализациями, как работает директива #include и как выполняется сборка многофайлового проекта. Кроме того, мы поговорим о проблемах, которые возникают в больших проектах и расскажем, как их решать.

Итераторы, алгоритмы и контейнеры
В курсе "Белый пояс по C++" мы познакомились с некоторыми стандартными алгоритмами: count, count_if и sort. Конечно же, библиотека C++ гораздо богаче и содержит значительно больше стандартных алгоритмов, которые позволяют сделать ваш код короче, понятнее и надёжнее. Чтобы их освоить, сначала нужно узнать, что такое итераторы. С этого мы и начнём четвёртую неделю. Затем рассмотрим стандартные алгоритмы, в которых используются итераторы. Наконец, мы познакомим вас с новыми стандартными контейнерами: деком и очередью.

Наследование и полиморфизм
Объектно-ориентированное программирование стоит на трёх китах: инкапсуляция, наследование и полиморфизм. О том, какими средствами достигается инкапсуляция в C++, мы узнали в "Белом поясе по C++". Эта неделя расскажет вам о двух оставшихся "китах": наследовании и полиморфизме. Мы не только покажем, как именно в C++ унаследовать один класс от другого и создать набор полиморфных объектов, но и применим полученные знания на практике - создадим программу-калькулятор, которая поддерживает работу с переменными.

Курсовой проект
Настало время закрепить все полученные на курсе знания, применив их в финальном проекте. Задача этой недели является развитием финального проекта курса "Белый пояс по C++". Вам точно так же надо будет разработать базу данных, которая хранит набор событий и поддерживает различные операции с ним.

0 Student
reviews
Cost Free Online Course (Audit)
Pace Upcoming
Provider Coursera
Language Russian
Certificates Paid Certificate Available
Calendar 6 weeks long
Sign up for free? Learn how

Disclosure: To support our site, Class Central may be compensated by some course providers.

+ Add to My Courses
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

0 reviews for Coursera's Основы разработки на C++: жёлтый пояс

Write a review

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free