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

Конструирование программного обеспечения

Статус: Курс по выбору (Программная инженерия)
Направление: 09.03.04. Программная инженерия
Когда читается: 2-й курс, 2-4 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 8
Контактные часы: 136

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

Аннотация

В рамках курса студентам предстоит освоить процесс конструирования программного обеспечения, язык программирования Kotlin, изучить основы разработки программного обеспечения, основные архитектуры и паттерны проектирования на основе объектно-ориентированного подхода, приобрести необходимые знания и навыки для создания клиент-серверных программных решений с применением инструментов и технологий, используемых в промышленной разработке.
Цель освоения дисциплины

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

  • Ознакомление слушателей с основами конструирования программного обеспечения и предоставление достаточного набора знаний и навыков для дальнейшего профессионального развития в этой области.
Планируемые результаты обучения

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

  • Знание принципов объектно-ориентированного программирования, основных программных архитектур и паттернов проектирования программного обеспечения
  • Владение лучшими практиками разработки и знание код-стайла
  • Умение создавать клиент-серверные приложения с базами данных
  • Знание принципов работы с многопоточностью
  • Навыки применения инструментальных средств в разработке и тестировании
  • Навыки разработки с применением Git
  • Понимание особенностей сборки и развертывания программ
  • Знакомство с синтаксисом и особенностями языка Kotlin в сравнении с другими языками программирования
Содержание учебной дисциплины

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

  • Основы ООП, принципы и концепции программирования
  • Основы языка UML
  • Основы языка программирования Kotlin
  • Применение паттернов проектирования в разработке
  • Основы проектирования БД
  • Основы многопоточности
  • Основы сетевого взаимодействия
  • Архитектурные паттерны
  • Фреймворки
  • Основы создания клиентских приложений на Kotlin
Элементы контроля

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

  • неблокирующий Активность_2М
    Учитывается активность на лекциях и семинарах
  • неблокирующий ДЗ_2М
  • неблокирующий КР_2М
  • неблокирующий Активность_3М
    активность на лекциях и семинарах
  • неблокирующий ДЗ_3М
  • неблокирующий КР_4М
    темы по всему курсу
  • неблокирующий КР_3М
    финальный коллоквиум на последнем занятии в 3м модуле (практическая задача и устный вопрос, на который нужно ответить без подготовки
  • неблокирующий ДЗ_4
  • неблокирующий Активность_4М
Промежуточная аттестация

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

  • 2023/2024 учебный год 3 модуль
    НАКОП_Mx — накопленные баллы в модуле x АУД_Mx — аудиторная активность на лекциях и семинарах в модуле x ДЗ_Mx — оценка за все ДЗ в модуле x КР_M2 — оценка за итоговую контрольную работу (коллоквиум) в модуле 2 Модули 2 и 3 НАКОП_M2 = 0,3 * АУД_M2 + 0,4 * ДЗ_M2 + 0,3 * КР_M2 НАКОП_M3 = 0,4 * АУД_M3 + 0,6 * ДЗ_M3 НАКОП_СР_М2_3 = (НАКОП_M2 + НАКОП_M3) / 2 ПРОМ_ЭКЗ_M3 — оценка за блокирующий экзамен (промежуточная аттестация) в модуле 3, полностью блокирует ПРОМ_ОЦЕН_M3 АВТОМАТ_M3 = (НАКОП_СР_М2_3 ≥ 8) Если (АВТОМАТ_M3), то ПРОМ_ЭКЗ_M3 = НАКОП_СР_М2_3 ПРОМ_ОЦЕН_M3 = 0,65 * НАКОП_СР_М2_3 + 0,35 * ПРОМ_ЭКЗ_M3 (округляется к ближайшему целому)
  • 2023/2024 учебный год 4 модуль
    Формула оценки за курс КПО НАКОП_Mx — накопленные баллы в модуле x АУД_Mx — аудиторная активность на лекциях и семинарах в модуле x ДЗ_Mx — оценка за все ДЗ в модуле x КР_M2 — оценка за итоговую контрольную работу (коллоквиум) в модуле 2 Модуль 4 НАКОП_M4 = 0,4 * АУД_M4 + 0,6 * ДЗ_M4 СР_НАКОП = (ПРОМ_ОЦЕН_M3 + НАКОП_M4) / 2 ПРОМ_ЭКЗ_M4 — оценка за блокирующий экзамен (промежуточная аттестация) в модуле 4, полностью блокирует ПРОМ_ОЦЕН_M4 и, соответственно, ФИН_ОЦЕН ПРОМ_ОЦЕН_M4 = 0,7 * НАКОП_М4 + 0,3 * ПРОМ_ЭКЗ_M4 Автомат за экзамен в модуле 4: АВТОМАТ_M4 = (СР_НАКОП ≥ 8) Если (АВТОМАТ_M4), то ПРОМ_ЭКЗ_М4 = СР_НАКОП ФИН_ОЦЕН — итоговая оценка за курс в модуле 4, которая идет в аттестат (округляется к ближайшему целому) ФИН_ОЦЕН = 0,65 * ПРОМ_ОЦЕН_M3 + 0,35 * ПРОМ_ОЦЕН_M4 Любое ДЗ в модуле х, где НАКОП_Mx < 4, можно пересдать со штрафом 50 %. Пересдача ДЗ возможна до начала сессии модуля х. При сдаче ДЗ в модуле х после дедлайна, начисляется штраф в 10 % от оценки за каждые сутки, но не более 50 %. Сдача ДЗ возможна до начала сессии модуля х. ПРОМ_ЭКЗ_Мх – промежуточный экзамен в модуле х (где х = 3 или х = 4) – включает решение практической задачи студентом на компьютере и его ответы на короткие устные вопросы преподавателя.
Список литературы

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

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

  • JAVA Concurrency на практике, , 2020

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

  • Java. Библиотека профессионала. Т.1: Основы, Хорстманн, К. С., 2019
  • Приемы объектно-ориентированного проектирования. Паттерны проектирования : пер. с англ., Гамма Э., 2013
  • Философия Java, Эккель, Б., 2011
  • Философия Java, Эккель, Б., 2015

Авторы

  • Александров Дмитрий Владимирович
  • Гринкруг Ефим Михайлович
  • Буцкая Евгения Александровна