• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
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 module
    0.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

Авторы

  • Ахмедова Гюнай Интигам кызы