Описание
Разработчик C++ создает программы, приложения, игры, операционные системы, драйверы и другое высоконагруженное программное обеспечение. Если вы хотите выжать максимум из любого «железа», программировать роботов, создать свою ОС, язык или другую мощную и жадную до ресурсов штуку, – вам понадобится C++
1) Введение в C++. Фундаментальные знания (Январь – Апрель)
- Основы C++ (1 месяц, 8 уроков)
Вы познакомитесь с основами программирования, ключевыми инструментами и понятиями. Узнаете, что такое компиляция, сборка проекта, переменные, функции, циклы и массивы. - Linux рабочая станция (1 месяц, 8 уроков)
Изучите основы работы в Linux. Научитесь управлять пользователями и правами файлов, писать скрипты в Bash, работать с процессами и управлять загрузкой и сервисами. - Алгоритмы и структуры данных (1 месяц, 17 уроков)
Разберетесь в основных структурах данных и базовых алгоритмах. Получите общее понимание процессов внутри программы и базовые навыки выстраивания работы алгоритмов. - Итоги четверти
Разработаете игру в крестики-нолики в процедурном стиле.
2) Применение C++. Понимание окружения (Май-Июль)
- ООП на примере C++ (1 месяц, 8 уроков)
Вы познакомитесь с лучшими техниками программирования на С++. Узнаете, как эффективно использовать объектно-ориентированное программирование и библиотеки потокового ввода/вывода. Напишете консольную игру. - Компьютерные сети (1 месяц, 8 уроков)
Разберетесь, как функционируют стек протоколов TCP/IP, клиент-серверная архитектура и протоколы прикладного уровня. Научитесь создавать приложения, устойчивые к взлому. - C++ сложные моменты (1 месяц, 8 уроков)
Изучите продвинутые возможности С++ и стандартной библиотеки (STL). Научитесь писать эффективный и понятный код. - Итоги четверти
Вы создадите игру в блэкджек с применением ООП.
3) С++ в контексте. Оптимизация и тонкости (Август-Сентябрь)
- Сетевое программирование на С++ (1 месяц, 8 уроков)
Познакомитесь с сетевыми технологиями. Разберетесь в сокетном взаимодействии, работе серверных протоколов прикладного уровня. Научитесь понимать принципы работы сетевых приложений от простейших сетевых сервисов до REST и Telegram-ботов. - Паттерны проектирования GoF (1 месяц, 8 уроков)
Изучите основные паттерны объектно-ориентированного проектирования. Вы узнаете о роли паттернов в архитектуре сложных систем и сможете быстро и эффективно создавать собственные приложения с учетом ограничений, возникающих при разработке. - Разработка программ с графическим интерфейсом Qt (1 месяц, 8 уроков)
Вы узнаете, как перестать выводить результаты работы в консоль и вместо этого нативно рисовать интерфейс. Научитесь работать с сигналами и слотами, подключать основные модули Qt, работать с Qt Designer. - Итоги четверти
Создадите:- HTTP-сервер, способный обрабатывать клиентские подключения и базовые запросы.
- Базовый сетевой сканер.
- Файловый менеджер с автоматическим монтированием внешних накопителей.
- Трекер задач с интерфейсом Qt, чтобы ничего не забывать.
4) Современные технологии, где применяется C++ (Октябрь-декабрь)
- Мобильная разработка на С++/QtQUICK (1 месяц, 8 уроков)
Познакомитесь с технологией, компонентами и алгоритмами работы QtQUICK, научитесь создавать мобильные приложения для ОС Andriod с использованием языка C++. - Введение в Unreal Engine (1 месяц, 8 уроков)
Познакомитесь с движком Unreal Engine 4 и напишете на нем небольшую игру. - Командная разработка (1 месяц, 12 уроков)
Разработаете OpenSource текстовый редактор типа Emacs на C++ с плагинами. Вы получите навыки командной работы, работы с Git и taskTracker, а также познакомитесь с методологиями Agile-разработки, SCRUM и Kanban. - Итоги четверти
Разработаете:- Высокорегулируемый текстовый редактор с возможностью применения скриптов.
- Мобильный список задач, который позволяет создавать, хранить и синхронизировать списки дел или покупок.
- Игра в тетрис (или арканоид) на движке Unreal Engine 4.
- Иван Овчинников | Ведущий специалист в АО «Российские Космические Системы»Начальник группы программистов, архитектор программного обеспечения (Java, Spring).
Писал прошивки для микроконтроллеров Миландр, NXP, STM (C/C++. Keil), описание цифровой схемотехники (ПЛИС: Verilog, SystemVerilog, VHDL). Разрабатывал на C++ и Qt пользовательские приложения для приема и расшифровки данных с космических аппаратов.
- Семён Паничев | Разработчик ПО в группе компаний «Остек»Разрабатывает программное обеспечение для подключения к измерительным и управляющим устройствам.В работе использует языки С++ и С#, технологии WPF, Entity Framework, MS SQL, MS Test и др.
Ранее занимался программированием микроконтроллеров (AVR) для систем «умного дома». Окончил бакалавриат Санкт-Петербургского государственного электротехнического университета «ЛЭТИ» и магистратуру Московского института электроники и математики по специальности «Инжиниринг в электронике».
Длительность обучения: 12 месяцев
Отзывы
Отзывов пока нет.