• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Специалитет 2022/2023

Языки программирования

Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус: Курс обязательный (Компьютерная безопасность)
Когда читается: 1-й курс, 1-4 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для всех кампусов НИУ ВШЭ
Специальность: 10.05.01. Компьютерная безопасность
Язык: русский
Кредиты: 12
Контактные часы: 216

Программа дисциплины

Аннотация

Дисциплина «Языки программирования» относится к базовому профессиональному модулю (Major). Для изучения дисциплины необходимы знания в рамках школьных курсов математики и информатики. Программа ориентирована на возможность приобретения компетенций, необходимых для соответствия профессиональным стандартам 06.001 Программист, 06.022 Системный аналитик, 06.028 Системный программист.
Цель освоения дисциплины

Цель освоения дисциплины

  • Основной целью освоения дисциплины «Языки программирования» является формирование общепрофессиональных компетенций и ключевых образовательных результатов, необходимых для выполнения научно-исследовательской и проектной деятельности, в том числе при разработке защищенного программного обеспечения, в сферах науки, техники и технологии, охватывающих совокупность проблем, связанных с разработкой и эксплуатацией средств и систем защиты информации компьютерных систем.
Планируемые результаты обучения

Планируемые результаты обучения

  • ОПК-7 Способен создавать программы на языках высокого и низкого уровня, применять методы и инструментальные средства программирования для решения профессиональных задач, осуществлять обоснованный выбор инструментария программирования и способов организации программ.
  • КОР-4 Знает не менее двух языков программирования (высокого и низкого уровня), пишет на данных языках прикладные программы, создает программные реализации средств защиты информации.
  • ОПК-2 Способен применять программные средства системного и прикладного назначений, в том числе, отечественного производства, для решения задач профессиональной деятельности.
  • ОПК-3 Способен на основании совокупности математических методов разрабатывать, обосновывать и реализовывать процедуры решения задач профессиональной деятельности.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение в компиляцию
  • Инструментальные средства и POSIX
  • Основы трансляции
  • Лексический анализ
  • Синтаксический анализ
  • Генерация промежуточного кода
  • Среды времени выполнения
  • Типы данных в языках Си и Си++
  • Модели памяти в языках Си и Си++
  • Операции отношения и логические операции в языках Си и Си++
  • Операторы ветвления в языках Си и Си++
  • Система ввода-вывода в языках Си и Си++
  • Циклы в языках Си и Си++
  • Функции в языках Си и Си++
  • Составные типы данных в языках Си и Си++
  • Язык Си++. Основы ООП и его реализация в языке Си++.
  • Язык Си++. Система ввода-вывода
  • Язык Си++. Обобщенное программирование и STL
  • Язык Си++. Современные возможности.
  • Библиотека Qt. Введение в объектную модель
  • Библиотека Qt. Основные классы элементов графического интерфейса пользователя
  • Библиотека Qt. Создание приложений
  • Паттерны проектирования
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание 1 модуль
  • неблокирующий Домашнее задание 2 модуль
  • неблокирующий Домашнее задание 3 модуль
  • неблокирующий Домашнее задание 4 модуль
  • неблокирующий Домашнее задание 5 модуль
  • неблокирующий Домашнее задание 6 модуль
  • неблокирующий Лабораторная работа 1 модуль
  • неблокирующий Лабораторная работа 2 модуль
  • неблокирующий Лабораторная работа 3 модуль
  • неблокирующий Лабораторная работа 4 модуль
  • неблокирующий Лабораторная работа 5 модуль
  • неблокирующий Лабораторная работа 6 модуль
  • неблокирующий Контрольная работа 2 модуль
  • неблокирующий Контрольная работа 4 модуль
  • неблокирующий Контрольная работа 6 модуль
  • неблокирующий Практическая работа 1-2 модуль
  • неблокирующий Практическая работа 3-4 модуль
  • неблокирующий Практическая работа 5-6 модуль
  • блокирующий Экзамен 2 модуль
  • блокирующий Экзамен 4 модуль
  • блокирующий Экзамен 6 модуль
Промежуточная аттестация

Промежуточная аттестация

  • 2022/2023 учебный год 2 модуль
    0.15 * Лабораторная работа 2 модуль + 0.15 * Лабораторная работа 1 модуль + 0.3 * Экзамен 2 модуль + 0.05 * Домашнее задание 1 модуль + 0.05 * Домашнее задание 2 модуль + 0.1 * Контрольная работа 2 модуль + 0.1 * Практическая работа 1-2 модуль
  • 2022/2023 учебный год 4 модуль
    0.15 * Лабораторная работа 4 модуль + 0.3 * Экзамен 4 модуль + 0.1 * Контрольная работа 4 модуль + 0.15 * Лабораторная работа 3 модуль + 0.1 * Практическая работа 3-4 модуль + 0.05 * Домашнее задание 3 модуль + 0.05 * Домашнее задание 4 модуль
  • 2023/2024 учебный год 2 модуль
    0.05 * Домашнее задание 6 модуль + 0.15 * Лабораторная работа 6 модуль + 0.1 * Практическая работа 5-6 модуль + 0.05 * Домашнее задание 5 модуль + 0.1 * Контрольная работа 6 модуль + 0.15 * Лабораторная работа 5 модуль + 0.3 * Экзамен 6 модуль
Список литературы

Список литературы

Рекомендуемая основная литература

  • Qt 4.8. Профессиональное программирование на С++, Шлее, М., 2013
  • Компиляторы: принципы, технологии и инструменты, Ахо, А. В., 2011
  • Операционная система UNIX : учеб. пособие для вузов, Робачевский, А. М., 2003
  • Приемы объектно - ориентированного проектирования : паттерны проектирования, Гамма, Э., 2014
  • Язык программирования С++ : специальное издание, Страуструп, Б., 2015
  • Язык программирования, Керниган, Б., 2012

Рекомендуемая дополнительная литература

  • C++17 STL. Стандартная библиотека шаблонов, Галовиц, Я., 2019
  • Стандартная библиотека С++ : справочное руководство, Джосаттис, Н. М., 2014
  • Шаблоны C++. Справочник разработчика, Вандевурд, Д., 2020
  • Эффективный и современный С++ : 42 рекомендации по использованию С++11 и С++14: пер. с англ., Мейерс, С., 2019