We use cookies in order to improve the quality and usability of the HSE website. More information about the use of cookies is available here, and the regulations on processing personal data can be found here. By continuing to use the site, you hereby confirm that you have been informed of the use of cookies by the HSE website and agree with our rules for processing personal data. You may disable cookies in your browser settings.

  • A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Java Programming (Advanced Level)

2024/2025
Academic Year
RUS
Instruction in Russian
3
ECTS credits
Course type:
Elective course
When:
2 year, 1, 2 module

Instructor


Leykin, Maxim

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

Аннотация

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

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

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

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

  • Выделять Java среди других языков программирования
  • Называть основные свойства и отличительные особенности Java
  • Понимать механизм аннотаций и рефлексии в Java
  • Применять базовую библиотеку ввода-вывода
  • Применять бибилиотеку Stream API и лямбда-выражения при разработке Java-программ
  • Применять библиотеку RxJava при разработке Java-программ
  • Применять библиотеку классов Java при разработке программ
  • Применять параметризацию при написании Java-программ
  • Применять правильные шаблоны при проектировании Java-программ
  • Применять синтаксис Java при разработке программ
  • Применять структуру коллекций при написании Java-кода
  • Проверять возникновение исключений в Java-коде
  • Создавать классы, методы и интерфейсы на языке Java
  • Создавать потоки, решать прикладные задачи с помощью многопоточности
Содержание учебной дисциплины

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

  • Введение
  • Синтаксис Java
  • Классы, интерфейсы, пакеты
  • Ввод-вывод
  • Обработка исключений
  • Параметризация типов в Java
  • Библиотека классов Java
  • Коллекции
  • Многопоточность в Java
  • Шаблоны проектирования в Java
  • Библиотека RxJava
  • Аннотации и рефлексия в Java
  • Потоки и лямбда-выражения.
Элементы контроля

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

  • неблокирующий Лабораторные работы
  • неблокирующий Работа на занятиях
  • неблокирующий Итоговый тест
Промежуточная аттестация

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

  • 2024/2025 2nd module
    0.4 * Итоговый тест + 0.25 * Лабораторные работы + 0.25 * Лабораторные работы + 0.05 * Работа на занятиях + 0.05 * Работа на занятиях
Список литературы

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

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

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

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

  • Нуркевич, Т. Реактивное программирование с применением 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). — Режим доступа: для авториз. пользователей.

Авторы

  • Лейкин Максим Валентинович