C/C++: основы системного программирования | ТЕРАКОР

Для кого курс

Начинающие программисты и студенты, которые хотят понять основы системного программирования

Курс даёт фундамент C и C++: от первой программы и работы с памятью до объектно-ориентированного кода и STL. Вы освоите компиляцию, отладку, указатели, структуры данных на C, затем перейдёте к классам, наследованию, шаблонам и стандартной библиотеке C++. Все модули ведут к сквозному проекту — CoreLab: набор CLI-утилит для работы с файлами и текстом, реализованный сначала на C, затем переписанный на C++ с использованием ООП и STL.

Входной уровень: базовая компьютерная грамотность. Следующий шаг — Rust: фундамент безопасного системного кода.

Стек курса

C11 C++17 GCC / Clang GDB CMake STL RAII фреймворк unit-тестов (gtest)

Чему вы научитесь

Фундамент системного программирования — от printf до классов и vector

Язык C

Синтаксис, типы, функции, массивы, строки и управление памятью

Указатели

Адреса, разыменование, динамическая память, struct и linked list

C++ и ООП

Классы, наследование, полиморфизм, перегрузка операторов

CoreLab

CLI-утилиты на C и C++: парсер, фильтр, статистика файлов

Состав программы

Что входит в программу

📚 Объём программы: 120 академических часов
• 40 академ/часов — занятия с преподавателем (лекции + практика)
• 80 академ/часов — самостоятельная работа, домашние задания, проекты

объём 120 ак. ч. (40 с преподавателем) · 8 модулей по 5 ч · stack-формат C → C++

C Модули 1–4 · 20 ак. ч.
01

Введение в C

Синтаксис, типы, ввод-вывод, компиляция GCC

5 ак. ч.
02

Управление и функции

if/for/while, switch, функции, scope, recursion

5 ак. ч.
03

Массивы и указатели

Массивы, строки, указатели, malloc/free

5 ак. ч.
04

Структуры и файлы

struct, union, enum, FILE I/O, препроцессор

5 ак. ч.
C++ Модули 5–8 · 20 ак. ч.
05

Основы C++ и ООП

Классы, конструкторы, деструкторы, инкапсуляция

5 ак. ч.
06

Наследование и полиморфизм

virtual, override, abstract class, interface

5 ак. ч.
07

STL и современный C++

vector, string, map, algorithm, auto, range-for

5 ак. ч.
08

CoreLab — итоговый проект

CMake, gtest, интеграция C/C++ модулей

5 ак. ч.

  • История C/C++. Экосистема: компилятор, линковщик, IDE, GCC/Clang
  • Первая программа: #include, main, return. Компиляция и запуск
  • Типы данных: int, float, double, char, bool. Литералы и константы
  • Операторы, выражения, приоритет. printf/scanf и форматированный вывод
  • Практика: CoreLab — утилита calc, вычисляющая простые выражения

  • Условия: if/else, тернарный оператор, switch/case
  • Циклы: for, while, do-while, break и continue
  • Функции: объявление, определение, параметры, return, scope
  • Рекурсия, static-переменные, header files (.h) и раздельная компиляция
  • Практика: CoreLab — модуль mathlib с функциями min, max, gcd, is_prime

  • Одномерные и многомерные массивы, инициализация, передача в функции
  • C-строки: char[], strlen, strcpy, strcmp, strcat и безопасные альтернативы
  • Указатели: адрес &, разыменование *, арифметика указателей
  • Динамическая память: malloc, calloc, realloc, free. Утечки памяти
  • Практика: CoreLab — динамический массив и linked list для хранения строк

  • struct, typedef, union, enum — пользовательские типы данных
  • Массивы структур, указатели на struct, вложенные структуры
  • Работа с файлами: fopen, fread/fwrite, fgets/fputs, fclose
  • Препроцессор: #define, #ifdef, макросы, include guards
  • Практика: CoreLab — textfilter: чтение файла, подсчёт слов и строк

  • C vs C++: cout/cin, namespace, ссылки vs указатели, new/delete
  • Классы: поля, методы, public/private/protected, this
  • Конструкторы, деструкторы, copy constructor, rule of three (обзор)
  • const, static members, friend functions
  • Практика: CoreLab — класс TextBuffer для хранения и обработки текста

  • Наследование: base/derived class, protected, override
  • Полиморфизм: virtual functions, pure virtual, abstract class
  • Перегрузка операторов: operator+, operator<<, operator[]
  • Множественное наследование (обзор), vtable и dynamic dispatch
  • Практика: CoreLab — иерархия Filter → WordFilter, LineFilter, RegexFilter

  • STL: vector, string, map, set — контейнеры и итераторы
  • algorithm: sort, find, count, transform, lambda-выражения
  • auto, range-for, smart pointers: unique_ptr, shared_ptr, RAII
  • fstream, stringstream, обработка ошибок через exceptions
  • Практика: CoreLab — переписывание textfilter на C++ с vector и algorithm

  • Архитектура CoreLab: calc, mathlib, textfilter, C++-модули — единый CLI
  • CMake: сборка многофайлового проекта, линковка C и C++ модулей
  • Unit-тесты фреймворк unit-тестов (gtest) для ключевых функций и классов
  • Отладка GDB: breakpoints, watch, backtrace
  • Итоговая аттестация, code review и подготовка кейса для портфолио

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

Набор CLI-утилит для работы с текстом и числами: на C — calc (калькулятор), mathlib (математические функции), textfilter (анализ файлов); на C++ — классы TextBuffer и иерархия фильтров с STL, smart pointers и unit-тестами. Проект собирается через CMake, отлаживается в GDB и покрывается тестами фреймворк unit-тестов (gtest). Модули 1–4 формируют C-часть, модули 5–7 переводят CoreLab на C++, модуль 8 интегрирует всё в единый репозиторий.

  • C: calc, mathlib, textfilter, linked list
  • C++: TextBuffer, Filter hierarchy, STL
  • CMake · GDB · фреймворк unit-тестов (gtest)
  • Указатели · RAII · smart pointers
  • Раздельная компиляция C/C++
  • Готовый кейс для портфолио

Официальный сертификат

Знак качества, который ценят работодатели

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

  • Два языка: Выдается на русском и английском языках для работы в РФ и за рубежом.
  • Уникальный номер: Каждый документ имеет свой номер для проверки подлинности работодателем.
  • Интеграция с резюме: Идеально дополняет профиль на hh.ru, Хабр Карьере и LinkedIn.
  • Лицензия: Выдается лицензированным учебным центром.

Стоимость курса

объём 120 ак. ч. (40 с преподавателем + 80 самостоятельно) · онлайн

C/C++: основы системного программирования

объём 120 ак. ч. (40 с преподавателем) · C11 · C++17 · CoreLab

44 000 ₽

Оплата за весь курс

  • 8 модулей с практикой
  • Итоговый проект — CoreLab
  • Группа до 8 человек
  • Сертификат УЦ ТЕРАКОР
Записаться на курс

Отзывы о курсе

Мнения выпускников курса «C/C++: основы системного программирования»

25 отзывов
5.0 средняя оценка

Обучение лично у основателя ТЕРАКОР

Сергей Герасименко — основатель ТЕРАКОР, преподаватель Java и Spring Boot

Сергей Валерьевич Герасименко

Руководитель ТЕРАКОР Digital · ведущий преподаватель

Опыт разработки в ОАО «РЖД» Победитель конкурса инноваций РЖД

4.9 на основе 1549 отзывов

Записаться на курс к Сергею →

Ближайший поток стартует в первый понедельник следующего месяца · осталось 4 места

Возможны вечерние занятия и обучение в выходные.

Все основные программы центра ведёт Сергей Валерьевич Герасименко — практикующий full-stack разработчик, технический директор и основатель ТЕРАКОР и ТЕРАКОР Digital.

Вы обучаетесь не у преподавателя-теоретика, а у специалиста, который сам разрабатывает программные системы и применяет технологии в коммерческих проектах.

Один руководитель.Два направления.Единая инженерная практика.

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

  • 17+

    лет в Enterprise-разработке

  • 25 000+

    специалистов подготовил

  • 5 000+

    технических собеседований провёл

Enterprise-опыт, а не пересказ документации

Создавал программное обеспечение для Управления ОАО «РЖД» и спроектировал корпоративную систему «САОС» для массовых опросов. Система победила в конкурсе инновационных проектов РЖД и сегодня используется в крупных организациях. На занятиях Сергей разбирает именно те задачи, с которыми разработчики сталкиваются в реальных коммерческих компаниях.

Знает требования рынка изнутри

Проводит tech-собеседования для банков и IT-команд. На курсе — Spring Boot 4, Kafka 4, Core, SQL и архитектура. Mock-собеседования для выпускников включены.

Программа курса выстроена на основе реальных требований работодателей — именно тех, которые Сергей проверяет на собеседованиях каждый день.

Ключевые компетенции

  • Enterprise-архитектура — проектирование высоконагруженных систем (опыт в ОАО «РЖД»)
  • Java-экосистема — Java 21, Spring Boot 4, Spring AI: от основ до production-паттернов
  • Распределённые системы — практический опыт с Kafka 4 и микросервисной архитектурой
  • Базы данных — PostgreSQL на уровне production: оптимизация запросов, проектирование схем
  • System Design — подготовка к архитектурным секциям собеседований уровня Middle+
  • Техническое интервью — 5 000+ проведённых собеседований для банков и IT-компаний
Индивидуальный формат

Индивидуальное обучение по выбранным темам

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

Стоимость индивидуального занятия от 3 000 ₽ за 1 академический час
  • Темы можно выбирать: берём только то, что нужно для работы, собеседования или проекта.
  • Индивидуальный план под ваш уровень: от базы до продвинутой архитектуры и практики.
  • Помощь с кодом, домашними заданиями, pet-проектом или рабочими задачами.
Записаться на индивидуальное обучение
Связаться с нами ТЕРАКОР

Оставьте заявку — специалист ответит в ближайшее время

Место нахождения г. Саратов, 1-й проезд имени С.Т. Разина, 3/7, 306, индекс 410054
Фактический адрес для встреч и консультаций в г. Москве ул. Каланчёвская, д. 15, м. Каланчёвская (по предварительной записи)
Фактический адрес для встреч и консультаций в Московской области, г. Королёв ул. Грабина, 5/2 (по предварительной записи)

ТЕРАКОР · ул. Каланчёвская, д. 15, м. Каланчёвская (по предварительной записи)

Открыть на Яндекс.Картах
Получить программу и цены