• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Программирование на Java (продвинутый уровень)

2022/2023
Учебный год
RUS
Обучение ведется на русском языке
4
Кредиты

Преподаватели

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

Аннотация

Дисциплина предлагается студентам 1 курса образовательной программы Бизнес-информатика. Изучается язык программирования Java как продолжение курса Программирование на Java (базовый уровень). В дополнении к углубленному материалу, предлагается изучение онлайн-курса на платформе Stepik. Язык программирования Java был разработан в начале 90-х гг. XX века в компании Sun Microsystems. Основным требованием к разрабатываемому языку была возможность выполнять код на различных аппаратных платформах без его перекомпиляции и пересборки. Язык в значительной степени унаследовал синтаксис C++, но имеет упрощенную по сравнению с С++ объектную модель и меньше возможностей напрямую работать с аппаратной частью. Приложения Java компилируются в специальный промежуточный машинный код (байт-код) и запускаются под управлением виртуальной Java-машины. Помимо этого к основным особенностям языка можно отнести: полную объектную ориентированность, встроенный «сборщик мусора», дополнительные средства для повышения надежности и стабильности кода.
Цель освоения дисциплины

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

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

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

  • Студент знает виды фремворков и их предназначение в проектах Java. Студент способен создать проект JavaFX, используя фреймворк. Студент понимает структуру MVC и может имплементировать ее средствами JavaFX. Студент способен реализовать необходимые инструменты для автоматической сборки собственного Java-проекта.
  • Студент понимает основные принципы и виды оптимизации исходного кода. Студент способен провести рефакторинг фрагмента кода и программы в целом, используя различные техники и инструменты.
  • Студент знает основные стадии жизненного цикла ПО, а также различные методологии разработки ПО. Студент способен проанализировать процесс разработки ПО и организовать его в соответствии с принципами гибких методологий.
  • Студент способен реализовать тестирование программного кода инструментами JUnit. Студент способен подготовить отчет по итогам тестирования исходного кода по различным критериям покрытия.
  • Студент способен имплементировать документацию в собственный Java-проект. Студент понимает разницу между различными видами лицензий и способен определить наиболее подходящую из них для использования в собственном проекте.
  • 1. Знает и умеет оптимально применять основные конструкции и фреймворки языка Java
  • 2. Умеет проводить оценку качества и сложности разработанных алгоритмов.
  • 3. Умеет решать поставленную задачу, разбивая её на подзадачи и выполняя все этапы ЖЦ ПО.
  • 4. Имеет опыт командной разработки программ.
Содержание учебной дисциплины

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

  • Фреймворки в Java
  • Техники оптимизации кода
  • Методологии совместной разработки программного обеспечения
  • Изучение подходов к тестированию качества алгоритмов и исходного кода
  • Авторские права на исходный код и его сопровождение
Элементы контроля

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

  • неблокирующий Посещаемость
  • неблокирующий Домашнее задание
  • неблокирующий Лабораторная работа
  • неблокирующий Проект
  • неблокирующий Защита работы
Промежуточная аттестация

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

  • 2022/2023 учебный год 4 модуль
    0.1 * Посещаемость + 0.2 * Лабораторная работа + 0.2 * Проект + 0.3 * Защита работы + 0.2 * Домашнее задание
Список литературы

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

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

  • Вязовик, Н. А. Программирование на Java : учебное пособие / Н. А. Вязовик. — 2-е изд. — Москва : ИНТУИТ, 2016. — 603 с. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/100405 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Программирование на Java : курс лекций, Вязовик Н.А., 2003
  • Пруцков, А.В. Программирование на языке Java. Введение в курс с примерами и практическими заданиями : учебник / А.В. Пруцков. — М. : КУРС, 2018.- 208 с. - ISBN 978-5-906923-51-6. - Режим доступа: http://znanium.com/catalog/product/1017180

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

  • Володин, В. В. Управление проектом [Электронный ресурс] : учеб. пособие / В. В. Володин, Ф. Б. Лобанов, Т. В. Алексеева и др. - М.: Московский финансово-промышленный университет «Синергия», 2013. - (Сдаем госэкзамен). - ISBN 978-5-4257-0144-2. - Режим доступа: http://znanium.com/catalog/product/451383
  • Нуркевич, Т. Реактивное программирование с применением RxJava / Т. Нуркевич, Б. Кристенсен , перевод с английского А. А. Слинкин. — Москва : ДМК Пресс, 2017. — 358 с. — ISBN 978-5-97060-496-0. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/100907 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Уорбэртон, Р. Лямбда-выражения в Java 8. Функциональное программирование – в массы / Р. Уорбэртон , перевод с английского А. А. Слинкина. — Москва : ДМК Пресс, 2014. — 192 с. — ISBN 978-5-94074-919-6. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/93568 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.