Скачать 

[Яндекс.Практикум] Разработчик C++. 2022. Первый месяц

Цена: 295 РУБ
Организатор: Aplication
Список участников складчины:
  • 1. lomeroon
  • 2. Stasevich
  • 3. x_Blood_x
Aplication
Aplication
Организатор
  • #1

[Яндекс.Практикум] Разработчик C++. 2022. Первый месяц

Ссылка на картинку
:)

Разработчик C++ участвует в создании сложных IT-продуктов: от беспилотных автомобилей и робототехники до веб-браузеров, микроконтроллеров, серверов и видеоигр. На этом языке можно создавать с нуля самые разные программы, а крепкая база знаний по C++ позволит легко освоить любой смежный инструмент.

Что вы получите от курса:
  • Научитесь писать эффективный код
  • Разберётесь в стандартной библиотеке C++
  • Начнёте работать с Git, IDE и компиляторами
  • Познакомитесь с базовыми алгоритмами и структурами данных
  • Создадите действующие сервисы и добавите 3+ проекта в портфолио
Курс подойдёт вам, если:
  • Вы никогда не программировали и хотите начать с языка С++
  • Вы начинаете не с нуля и хотите освоить C++ для карьерного роста
  • Вы с опытом, но хотите выучить новый язык и сменить работу
  • Вам не хватает крепкой базы программирования
Будете учить только то, что точно пригодится в работе

С++ — сложный язык для сложных систем: беспилотных автомобилей и робототехники, веб-браузеров, микроконтроллеров, серверов и видеоигр. Курс непростой, но освоить его могут даже новички, если уделять обучению достаточно времени и усилий.

Программа:

0 модуль. Базовые понятия программирования (опциональный). 10 часов

Вы узнаете об основах программирования и научитесь писать простые программы на C++
  • Знакомство с С++
  • Переменные и ввод
  • Условные конструкции, цикл for
  • Функции
1 модуль. Основы C++ (бесплатный). 30 часов
Вы познакомитесь с основными возможностями языка С++ и напишете на нём более 25 программ
  • Числа и строки. Операции над ними. Ввод и вывод
  • Условия и циклы
  • V значит вектор
  • Функции
  • Контейнер set
  • Глубокое копирование, ссылки и константность
  • Контейнер map
2 модуль. Основные компоненты C++. 120 часов
Вы освоите понятия, важные для полноценной разработки на C++:
итераторы — чтобы работать со всеми стандартными алгоритмами,
конструкторы — чтобы создавать объекты стало проще,
шаблоны функций — чтобы писать универсальный код.
А ещё научитесь обращаться со сложными программами: разбивать код на несколько файлов и тестировать его.

Спринт 1. Изучаем Git, базовые алгоритмы, структуры и классы данных. Погружаемся в детали и избегаем дублирования кода.
  • Git
  • Простые алгоритмы
  • Структуры и классы
  • Лямбда-функции
  • Итоговый проект
  • Работа со средой Eclipse
  • Числовые типы
  • Пары и кортежи
  • Шаблоны функций
  • Видимость и инициализация переменных
  • Итоговый проект
Спринт 2. Тестируем код.
  • Введение в тестирование
  • Фреймворк для юнит-тестов
  • Компиляция и отладка в консоли
  • Итоговый проект
Спринт 3. Осваиваем мощь и гибкость классов.
  • Жизненный цикл объекта
  • Перегрузка операторов
  • Обработка ошибок. Исключения
  • Итоговый проект
Спринт 4. Разбиваем код на несколько файлов и углубляем знания о стандартных алгоритмах.
  • Итераторы
  • Алгоритмы поиска
  • Стек, очередь, дек
  • Распределение кода по файлам
  • Итоговый проект
3 модуль. Эффективность кода. 120 часов
Вы научитесь оценивать эффективность высокопроизводительного приложения до и после его разработки. Познакомитесь с внутренним устройством контейнеров — это позволит понять, как настраивать элементы языка на эффективную работу. Чтобы избегать лишних копирований в коде, освоите move-семантику. А чтобы выжимать максимум из всех ядер процессора, начнёте писать многопоточные программы.

Спринт 5. Работаем над скоростью кода.
  • Профилируем и ускоряем
  • Потоковые хитрости
  • Просто о сложности. Теория быстродействия
  • Итоговый проект
Спринт 6. Учимся управлять памятью.
  • Модель памяти в C++
  • Односвязный список
  • Итоговый проект
Спринт 7. Постигаем внутреннее устройство контейнеров и осваиваем семантику перемещения.
  • Санитайзеры и другие инструменты поиска ошибок
  • Эффективные линейные контейнеры
  • Семантика перемещения
  • Итоговый проект
Спринт 8. Создаём многопоточные программы.
  • Параллельные алгоритмы
  • Асинхронные вычисления
  • Состояние гонки и защита от него
  • Итоговый проект
4 модуль. Элегантность и масштабируемость. 120 часов
Вы изучите инструменты, которые защищают код от человеческих ошибок и делают его опрятным: пространства имён, константность, RAII. Узнаете, как избавить программу от проблем роста. Освоите динамический полиморфизм.

Спринт 9. Изучаем ассоциативные контейнеры и пространства имён.
  • Ассоциативные контейнеры
  • Имена и пространства имён
  • Итоговый проект
Спринт 10. Упрощаем код благодаря наследованию, полиморфизму и умным указателям.
  • Умные указатели
  • Наследование и полиморфизм
  • Итоговый проект
Спринт 11. Осваиваем практики проектирования программ и работаем с файлами.
  • Константность как элемент проектирования программ
  • Работа с файлами
  • Идиома RAII
  • Итоговый проект
Спринт 12. Достигаем элегантности кода.
  • Философия хороших функций
  • Передаём данные в функцию
  • Получаем данные из функции
  • Рефакторинг
  • Итоговый проект
5 модуль. Разработка библиотек и больших проектов. 120 часов
Вы изучите основы сериализации объектов и библиотеку protobuf. Они помогут вашим программам обмениваться данными, а плотная упаковка сэкономит память. Разберётесь в концепции undefined behaviour. Напишете полноценный вектор, познакомитесь с variadic templates и гарантиями безопасности исключений.

Спринт 13. Пробуем себя в роли разработчиков библиотек.
  • Undefined Behavior
  • Vector своими руками
  • Итоговый проект
Спринт 14. Рассматриваем размещение объектов в памяти.
  • Хранение объектов в памяти
  • Таблица виртуальных методов
  • Собираем по-новому. CMake
  • Сериализация и protobuf
  • Итоговый проект
6 модуль. Дипломный проект. 40 часов
Вы закрепите навыки написания понятного и масштабируемого кода: разработаете крупную программу, которую сможете развивать в будущем.

Спринт 15.
  • Разработка интерпретатора языка Mython
  • Итоговый проект
Спринт 16.
  • Дипломный проект «Электронная таблица»
 
Зарегистрируйтесь , чтобы посмотреть скрытый авторский контент.
Похожие складчины
  • в разделе: Программирование
  • в разделе: Программирование
  • в разделе: Программирование
  • в разделе: Программирование
  • в разделе: Программирование

Войдите или зарегистрируйтесь, чтобы комментировать и скачивать складчины!

Учетная запись позволит вам участвовать в складчинах и оставлять комментарии

Регистрация

Создайте аккаунт на форуме. Это не сложно!

Вход

Вы уже зарегистрированы? Войдите.

Сверху