Модули

Программирование: концепции и алгоритмы

В этом модуле изучаются основы программирования на доступном и популярном в отрасли языке. Рассматриваются алгоритмы — их сущность, значимость и применение — с последующим применением знаний для написания собственных программ.

Компьютерные системы

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

Рассматриваются архитектуры центрального процессора (CPU), иерархия памяти, эффективность, сетевые технологии и вопросы безопасности. Кроме того, вводится концепция операционной системы, которая в сочетании с изучаемыми темами позволяет начать путь разработчика.

Работа с данными

Технологии, этика и законы, регулирующие процессы работы с базами данных, являются ключевым элементом разработки программного обеспечения в XXI веке. В модуле изучаются элементы обработки, хранения и управления данными, которые будут применяться в последующих этапах обучения.

Математические навыки для специалистов по компьютерным наукам

При написании программного обеспечения используется алгоритмика и алгебра, и для их корректного применения необходимы прочные математические навыки. В модуле изучаются теория множеств, алгоритмы и их сложность, а также логическая арифметика.

Программирование: профессиональная практика

Модуль развивает базовые навыки программирования, полученные в курсе «Концепции и алгоритмы». Вводятся новые идеи, такие как объектно-ориентированное программирование и проектирование переиспользуемого кода, изучаемые на другом популярном языке программирования. Обучение включает структурирование кода для упрощения его поддержки и расширения, что подготавливает к следующему этапу изучения разработки программного обеспечения.

Интеграционный проект

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