2025/2026




Java и объектно-ориентированное программирование
Статус:
Маго-лего
Когда читается:
1-3 модуль
Охват аудитории:
для своего кампуса
Преподаватели:
Горденко Мария Константиновна
Язык:
русский
Контактные часы:
80
Программа дисциплины
Аннотация
Дисциплина направлена на формирование у студентов знаний и навыков программирования на языке Java. В курсе рассматриваются основы синтаксиса, принципы объектно-ориентированного программирования, работа с массивами, строками и коллекциями, механизмы обработки исключений и многопоточности. Отдельное внимание уделяется современным средствам Java, включая Stream API, лямбда-выражения и работу с внешними библиотеками. Практическая часть курса включает разработку учебного проекта.
Цель освоения дисциплины
- Курс направлен на формирование у студентов понимания языка программирования Java и его основных особенностей, освоение базовых механизмов объектно-ориентированного программирования, а также практических навыков разработки программных приложений.
- Особое внимание уделяется тонкостям языка, умению писать эффективный и читаемый код, использованию фреймворков и работе с коллекциями.
Планируемые результаты обучения
- Знает: особенности языка Java и процесс запуска программ; синтаксис языка Java, принципы объектно-ориентированного программирования, устройство памяти, сборщик мусора, особенности пула строк, основные классы стандартной библиотеки (String, Arrays, коллекции, обёртки, перечисления);
- Знает: концепции абстрактных классов, интерфейсов, обобщений и вложенных классов; основы многопоточности и работы с java.util.concurrent; приёмы обработки исключений, отличие checked и unchecked исключений; современные подходы: Stream API, лямбда-выражения, функциональные интерфейсы.
- Умеет: писать и запускать программы на Java в консоли и IDE; разрабатывать методы, применять перегрузку и рекурсию; работать с одномерными и многомерными массивами, передавать массивы в методы; использовать регулярные выражения для анализа и обработки текстов; проектировать классы и объекты, использовать геттеры, сеттеры, статические члены класса; переопределять методы класса Object;
- Умеет: подключать внешние библиотеки, выполнять JSON сериализацию и десериализацию; применять механизмы обработки ошибок с использованием try-catch-finally и try-with-resources; проектировать и реализовывать интерфейсы и обобщённые классы; использовать коллекции (ArrayList, LinkedList, HashSet, TreeSet, HashMap, TreeMap) в практических задачах; реализовывать многопоточные программы, синхронизировать доступ к данным, предотвращать дедлоки.
- Владеет: навыками разработки алгоритмических и прикладных задач на Java; инструментами IDE и практикой эффективного использования среды разработки; современными возможностями языка Java (Stream API, лямбды, method references); методами отладки, тестирования и анализа кода; навыками структурирования и документирования программных проектов;
Содержание учебной дисциплины
- Платформа Java, компиляция и запуск в консоли, использование IDE
- Управляющие конструкции языка. Ветвления и циклы
- Одномерные массивы. Улучшенный цикл for. Генерация случайных чисел. Популярные методы класса Arrays. Копирование массива. Передача массива в метод.
- Тип String. Основные методы. Пул строк. Сборщик мусора. Форматирование. StringBuilder.
- ООП. Классы и объекты. Члены класса. Инкапсуляция. Геттеры и сеттеры. Статические члены класса.
- Отношение наследования, полиформизм. Методы класса Object.
- Подключение внешней библиотеки. JSON сериализация и десериализация.
- Исключения в Java. Checked/unchecked exceptions. Try-catch-finally, try-with-resources. Создание собственных исключений. Best practices обработки ошибок.
- Абстрактные классы и интерфейсы.
- Обобщенные классы. Обобщенные методы. Ограничения типов.
- Вложенные классы. Функциональные интерфейсы.
- Многопоточность: основы потоков, приоритеты, демоны. Библиотека java.util.concurrent: Runnable, Callable, ExecutorService, CompletableFuture.
Промежуточная аттестация
- 2025/2026 2nd module-
- 2025/2026 3rd module0.4 * Экзамен + 0.25 * ДЗ_контесты + 0.1 * ДЗ_тесты + 0.25 * Проект
Список литературы
Рекомендуемая основная литература
- Программируем на Java, Лой, М., 2023
- Программируем на Java. 5-е межд. изд. . - 978-5-4461-1836-6 - Лой Марк, Нимайер Патрик, Лук Дэниэл - 2023 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/387726 - 387726 - iBOOKS
Рекомендуемая дополнительная литература
- Java : устранение проблем, Спилкэ, Л., 2023