• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2019/2020

Компьютерный практикум "Инструментальные средства программирования"

Статус: Курс обязательный (Информатика и вычислительная техника)
Направление: 09.03.01. Информатика и вычислительная техника
Когда читается: 3-й курс, 3, 4 модуль
Формат изучения: без онлайн-курса
Язык: русский
Кредиты: 3

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

Аннотация

Компьютерный практикум «Инструментальные средства программирования» служит для приобретения студентами практических навыков организации процесса разработки, тестирования, отладки и сопровождения прикладных программных продуктов. Основные навыки, приобретаемые студентами: освоение основных парадигм программирования, навыки тестирования и отладки программы, организация процесса создания программы, грамотная декомпозиция программы, организация рефакторинга (перестройки с сохранением функциональности) программы. Дисциплина также предусматривает приобретение студентами знаний в области методологий разработки программного обеспечения. Предполагается освоение основных инструментальных средств для программирования: специализированный текстовый редактор, репозиторий.
Цель освоения дисциплины

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

  • Целью компьютерного практикума "Инструментальные средства программирования" является практическое освоение студентами типовых методов решения задач программирования, их эффективной реализации в коде, применения инструментальных средств для проектирования, тестирования и отладки программного обеспечения. Приобретенные навыки позволят студентам создавать программы с наименьшими затратами ресурсов.
Планируемые результаты обучения

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

  • Блок_1 Умение планировать работы проекта с помощью пакета MSProject или другого пакета. Блок_2 Понимание назначения и роли шаблонов в программировании. Блок 3. Знать теоретические основы и аппаратное устройство ПЛИС
  • Блок_1 Знание основных парадигм программирования: функциональная, паттерная, dataflow. Блок_2 Понимание структуры и владение компонентами стандартной библиотеки. Блок 3. Иметь навыки проектирования в специализированном программном обеспечении Altera Quartus II
  • Блок_1 Навыки работы с репозиторием. Блок_2 Навыки применения требуемого паттерна при разработке программного обеспечения.
  • Блок_1 Знание методик и инструментария для отладки программы. Блок_2 Владение методами хранения, модификации и представления данных с использованием концепции "Модель-представление"
  • Блок_1 Умение пользоваться наиболее распространенными текстовыми редакторами. Блок_2 Владение методами работы с XML.
Содержание учебной дисциплины

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

  • Блок_1 Парадигмы вычислительного процесса. Блок_2 Контейнеры, алгоритмы, итераторы библиотеки STL..Блок 3. Синтез и моделирование комбинационных устройств, заданных в табличной форме
    Блок_1 Библиотека STL, как представитель паттерной парадигмы программирования. Лямбда-выражения на языка C++. Dataflowпарадигма вычислительного процесса. Автоматная парадигма вычислительного процесса на примере абстрактного автомата для распознания языка. Блок_2 Последовательные контейнеры Vector, List. Адаптеры последовательных контейнеров Stack, Queue. Ассоциативные контейнеры Map, Set.
  • Блок_1 Планирование работ по созданию программного средства, Блок_2 Использование шаблонов в программировании. Стандартная библиотека шаблонов. Блок_3. Знакомство с САПР Altera Quartus II
    Блок_1. Планирование работ. Иерархическое планирование. Сетевой график. Программный продукт MSProject. Блок_2 Пример шаблона строк. Шаблоны функций. Перегрузка шаблонов. Специализация.
  • Блок_1 Репозиторий Блок_2 Понятие паттернов проектирования. Категории паттернов. Применение паттернов в программировании. Блок 3. Дешифратор адреса
    Блок_1 Основные операции с репозиторием в консольном режиме. Блок_2 Паттерны проектирования: Порождающие паттерны, структурные паттерны, паттерны поведения.
  • Блок_1 Методики и инструментарий для отладки программы. Блок_2 Представление данных. Концепция Модель-представление. Блок 3. Сумматор
    Блок_1 Модели «черный ящик» и «прозрачный ящик». Тестовые примеры. Директива «assert» языка С++. Блок_2 Реализация концепции "Модель - Представление" в библиотеке Qt. Модель, представление, делегат. Промежуточная модель данных.
  • Блок_1 Текстовые редакторы для написания программы. Блок_2 Язык разметки XML. Модели DOM и SAX для работы с XML. Блок 3. Разработка конвейерного умножителя в среде Altera Quartus II
    Блок_1 Текстовый редактор Vim. Блок_2 Хранение данных в формате XML. Средства библиотеки Qt для работы с XML. Примеры чтения и записи данных.
Элементы контроля

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

  • неблокирующий Практические работы
  • неблокирующий Самостоятельная работа
  • неблокирующий Экзамен
    Экзамен проводится в письменной форме (компьютерный тест) с использованием асинхронного прокторинга. Экзамен проводится на платформе https://moodle.org/, прокторинг на платформе Экзамус (https://hse.student.examus.net). Преподаватель вправе освободить от сдачи экзамена студентов. Особо отличившихся при изучении Дисциплины и набравших накопленную оценку по Дисциплине выше 7 баллов, с выставлением им оценки «отлично» (8, 9, 10 баллов), преподаватель может выставить автоматы. Преподаватель объявляет список таких студентов не позднее, чем за два дня до экзамена. Для объявления оценок могут быть использованы электронные каналы передачи информации, регулярно используемые в процессе обучения. К экзамену необходимо подключиться за 15 минут до начала. На платформе Экзамус доступно тестирование системы. Компьютер студента должен удовлетворять требованиям: (https://elearning.hse.ru/data/2020/05/07/1544135594/Технические%20требования%20к%20ПК%20студента.pdf) Для участия в экзамене студент обязан: заранее зайти на платформу прокторинга, провести тест системы, включить камеру и микрофон, подтвердить личность. Во время экзамена студентам запрещено: общаться (в социальных сетях, с людьми в комнате), списывать. Во время экзамена студентам разрешено: пользоваться чистыми листами, ручкой. Кратковременным нарушением связи во время экзамена считается прерывание связи до 2 минут. Долговременным нарушением связи во время экзамена считается прерывание связи 2 минуты и более. При долговременном нарушении связи студент не может продолжить участие в экзамене. Процедура пересдачи аналогична процедуре сдачи. Преподаватель вправе освободить от сдачи экзамена студентов. Особо отличившихся при изучении Дисциплины и набравших накопленную оценку по Дисциплине выше 7 баллов, с выставлением им оценки «отлично» (8, 9, 10 баллов), преподаватель может выставить автоматы. Преподаватель объявляет список таких студентов не позднее, чем за два дня до экзамена. Для объявления оценок могут быть использованы электронные каналы передачи информации, регулярно используемые в процессе обучения.
Промежуточная аттестация

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

  • Промежуточная аттестация (4 модуль)
    0.7 * Практические работы + 0.1 * Самостоятельная работа + 0.2 * Экзамен
Список литературы

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

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

  • Иванова Г.С. - Технология программирования (для бакалавров) - КноРус - 2018 - 333с. - ISBN: 978-5-406-06109-1 - Текст электронный // ЭБС BOOKRU - URL: https://book.ru/book/926372
  • О’Двайр А. - Осваиваем C++17 STL - Издательство "ДМК Пресс" - 2018 - 352с. - ISBN: 978-5-97060-663-6 - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/116126
  • Страуструп Б. - Язык программирования C++ для профессионалов - Национальный Открытый Университет "ИНТУИТ" - 2016 - 670с. - ISBN: - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/100542

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

  • Алексеев Е.Р., Злобин Г.Г., Костюк Д.А. - Программирование на языке С++ в среде Qt Creator - Национальный Открытый Университет "ИНТУИТ" - 2016 - 715с. - ISBN: - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/100414
  • Свиркин М.В., Чуркин А.С. - Программирование под Windows в среде Visual C++ 2005 - Национальный Открытый Университет "ИНТУИТ" - 2016 - 215с. - ISBN: - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/100416