Что почитать и изучать дальше

Базовый раздел даёт старт: программа, переменные, ввод-вывод, массивы, условия, циклы, функции, файлы, память и классы. Дальше лучше не читать всё подряд, а выбирать следующий шаг под проект.
Лучшее продолжение — маленький работающий проект. Он показывает, каких знаний не хватает именно сейчас.
Что уже должно быть понятно
После базового раздела ученик должен уметь:
- написать и запустить простую консольную программу;
- хранить данные в переменных, массивах и векторе;
- вводить и выводить значения;
- выбирать действия через
if; - повторять действия через
whileиfor; - выносить код в функции;
- читать и записывать простые txt-файлы;
- понимать базовую идею указателей и динамической памяти;
- создать простой класс с полями и методами.
Если какой-то пункт не получается без подсказки, лучше вернуться к соответствующему уроку и написать ещё одну маленькую программу.
Маршрут 1. Arduino и роботы
Если цель — робототехника, следующий шаг:
- первая программа Arduino;
- цифровой выход и мигание светодиодом;
- кнопка и цифровой вход;
- аналоговый вход;
- моторы и драйверы;
- датчики линии и расстояния;
- простой проект робота.
Связанный раздел сайта: Программирование Arduino на C++.
Маршрут 2. Алгоритмы
Если хочется лучше решать задачи, изучайте:
- блок-схемы;
- поиск минимума и максимума;
- сортировки;
- работа с таблицами;
- оценка количества шагов;
- разбиение задачи на функции.
Связанный раздел сайта: Алгоритмы и блок-схемы.
Маршрут 3. Стандартная библиотека
В этом разделе специально использовался минимум библиотек. Дальше стоит изучить:
| Тема | Зачем нужна |
|---|---|
string | удобная работа с текстом |
vector глубже | хранение наборов данных |
algorithm | готовые операции над наборами |
cmath | математические функции |
fstream | файлы и журналы испытаний |
Не пытайтесь подключать всё сразу. Берите библиотеку тогда, когда она решает понятную задачу.
Маршрут 4. Инструменты
Для уверенной работы нужны не только конструкции языка:
- предупреждения компилятора;
- отладчик;
- Git;
- простые тесты;
- форматирование кода;
- чтение документации.
Начните с привычки собирать программу с предупреждениями и исправлять их, а не отключать.
Маршрут 5. Проект после базового раздела
Хороший итоговый проект:
- читает настройки из консоли или файла;
- хранит несколько значений в массиве или векторе;
- использует условия и циклы;
- разбит на функции;
- имеет хотя бы один простой класс;
- выводит понятный отчёт на английском.
Примеры проектов:
- расчёт среднего значения датчика;
- симулятор движения по прямой;
- журнал испытаний мотора;
- проверка порогов датчика линии;
- консольное меню настройки робота.
Что пока можно не изучать
Некоторые темы важны, но не нужны сразу после первого знакомства:
- шаблоны;
- перегрузка операторов;
- сложная перегрузка функций;
- умные указатели;
- исключения в больших проектах;
- многопоточность;
- метапрограммирование.
К ним лучше переходить после нескольких законченных программ.
Как читать источник
- Сначала найдите маленький пример.
- Запустите его без изменений.
- Измените одно значение.
- Сравните результат.
- Только потом переносите идею в свой проект.
Если источник использует незнакомую конструкцию, не копируйте её вслепую. Запишите вопрос и найдите урок, где она объясняется.
Практика
- Выберите один маршрут продолжения.
- Составьте проект на 3-5 занятий.
- Выпишите, какие темы раздела понадобятся.
- Найдите одну тему, которую нужно повторить.
- Сделайте первую маленькую программу проекта.
Проверьте себя
- Какие темы раздела вы можете применить без подсказки?
- Почему после базового раздела полезнее делать проект, чем читать справочник подряд?
- Какой маршрут подходит для робототехники?
- Какие темы лучше оставить на потом?
- Как безопасно читать новый технический источник?
Сначала ответьте без подсказки. Ответ можно считать полным, если вы:
- формулируете основную мысль своими словами;
- называете важные условия, ограничения или меры безопасности;
- для схемы, кода или расчёта показываете ход решения и ожидаемый результат.
Если один из пунктов объяснить не получается, найдите соответствующую главу статьи, перечитайте её и повторите ответ.
Словарь статьи
| Термин | Значение |
|---|---|
| маршрут обучения | выбранная последовательность следующих тем |
| проект | законченная программа с понятной задачей |
| стандартная библиотека | готовые средства C++ |
| отладчик | инструмент для пошагового запуска программы |
| документация | официальный или справочный источник по инструменту |
Связанные темы
- Параметры командной строки — последняя техническая статья раздела.
- Классы — основа для дальнейшего ООП.
- Программирование Arduino на C++ — следующий практический маршрут.
Источники
- C++ reference: https://en.cppreference.com/w/
- ISO C++ Core Guidelines: https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
- Microsoft Learn C++: https://learn.microsoft.com/en-us/cpp/
- GCC documentation: https://gcc.gnu.org/onlinedocs/