DEV-J120. Java SE. Стандартные пакеты
Длительность дисциплины: 40 ак.ч.
Аннотация
Целью реализации модуля DEV-J120. Java SE. Стандартные пакеты является освоение слушателями основных стандартных пакетов платформы Java SE, а также приобретение навыков разработки приложений на платформе Java SE и проведения инспекции и тестирования кода на языке Java.
Знания и умения, полученные в результате изучения
В результате освоения программы, обучающийся должен уметь:
• использовать стандартные средства Java для организации взаимодействия программы со средой выполнения
• использовать потоковую модель, в частности для операций чтения/записи из/в файлы
• реализовывать относительно несложные графические пользовательские интерфейсы
• применять коллекции для решения практических задач
В результате освоения программы обучающийся должен знать:
• назначения основных пакетов платформы Java SE и понимание структуры стандартных пакетов платформы Java SE.
• структуры официальной документации по платформе Java SE
• основных классов пакета java.lang
• потоковой модели ввода/вывода и основных классов, используемых для работы с файлами
• модели реализации графического пользовательского интерфейса, а также основных классов и интерфейсов пакетов java.awt и javax.swing
• основы разработки пользовательского интерфейса на основе технологии JavaFX
• основных классов и интерфейсов коллекций
В результате освоения программы обучающийся должен приобрести практический опыт:
• разработки приложений на платформе Java SE и проведения инспекции и тестирования кода на языке Java
• использования технологии разработки объектно-ориентированных программ на основе платформы Java SE с использованием стандартных пакетов
• решения поставленных задач при создании работоспособных приложений
Содержание дисциплины
Тема 1. Обзор стандартных пакетов платформы Java
1.1 Основные стандартные пакеты платформы Java SE
Цель курса.
Обзор основных рассматриваемых тем.
Ограничения курса.
Общая структура платформы Java SE.
Обзор основных стандартных пакетов и их назначение.
Роль и порядок использования стандартных пакетов при написании программ на Java
1.2 Обзор официальной документации по платформе Java SE
Получение официальной документации.
Структура и содержание документации.
Основные специализированные пакеты.
Основные приёмы работы с официальной документацией.
Практические занятия
Не предусмотрены
Тема 2. Основные классы пакета java.lang
2.1 Обзор пакета java.lang
Назначение и особенности пакета.
Обзор структуры и содержания пакета.
2.2 Основные классы пакета java.lang
Класс Object.
Основные методы и приемы их использования.
Класс System.
Основные методы и приемы их использования.
Класс Process.
Основные методы и приемы их использования.
Класс Runtime.
Основные методы и приемы их использования.
Классы-оболочки для встроенных типов данных.
Класс Math
2.3 Работа со строками Классы String.
StringBuilder и StringBuffer.
Основные методы и приемы их использования.
2.4 Основные классы исключений
Классы Throwable, Error и Exception.
Класс RuntimeException и его подклассы.
Практические занятия
1. Реализация класса с переопределением методов clone(), equals(), hashcode().
2. Реализация класса, определяющего характеристики оперативной памяти.
3. Реализация класса, обеспечивающего запуск и взаимодействие с другим приложением.
4. Реализация класса, обеспечивающего ряд операций над строками.
5. Разработка и использование пользовательского исключения.
Тема 3. Основы разработки графического пользовательского интерфейса
3.1 Общие принципы функционирования графического пользовательского интерфейса
Основные разновидности пользовательского интерфейса.
Общие принципы построения графического пользовательского интерфейса.
Оконный интерфейс.
3.2 Обзор событийной модели используемой в реализации графического пользовательского интерфейса
Событийно-управляемая модель приложений.
Элементы пользовательского интерфейса как источники событий.
Представление событий.
Обработчики событий.
3.3 Основные элементы графического интерфейса
Главное окно приложения.
Главное меню приложения.
Надписи.
Поля ввода.
Флажки.
Кнопки.
Агрегатные типы.
Компоновка элементов пользовательского интефейса.
Практические занятия
Не предусмотрены
Тема 4. Основы разработки пользовательского интерфейса на основе технологии JavaFX
4.1 Общие принципы построения пользовательского интерфейса на основе технологии JavaFX
Архитектура JavaFX-приложений.
Особенности разработки JavaFX-приложений.
Форма описания пользовательского интерфейса.
Обработка событий пользовательского интерфейса.
4.2 Основные элементы пользовательского интерфейса
Обзор API.
Граф сцены.
Основные типы контента: узлы, состояния, эффекты.
Веб-компоненты.
Использование CSS.
Основные элементы управления.
Макет.
Преобразования
4.3 Основные классы и интерфейсы
Обзор пакета javafx.
Классы Application и Platform.
Создание форм.
Классы Text и TextField.
Класс Button.
Класс Canvas.
Использование элементов FXML.
Обработка событий.
Анимация и визуальные эффекты.
4.4 Пример разработки пользовательского интерфейса
Постановка задачи.
Проектирование пользовательского интерфейса.
Разработка алгоритмов обработчиков событий.
Реализация и отладка приложения.
Практические занятия
Разработка простейшего приложения на основе JavaFX.
Тема 5. Основные классы пакета java.util
5.1 Обзор пакета
Общее назначение пакета.
Основные классы и интерфейсы пакета
5.2 Основные интерфейсы коллекций
Основные свойства коллекций и их основные отличия от массивов.
Интерфейс Collection.
Интерфейс Set.
Вспомогательные интерфейсы Iterator и Comparator.
Интерфейс List.
Интерфейс Map.
5.3 Основные классы коллекций
Обзор основных классов, реализующих интерфейсы коллекций
Практические занятия
Использование коллекции для обработки данных неопределённого размера.
Тема 6. Основы Stream API
6.1 Агрегатные операции, каналы и потоки.
Основные термины и определения.
Назначение и основные особенности «конвейерной» модели обработки данных.
Терминальные и нетерминальные операции.
6.2 Интерфейсы Sream<T> и Collector<T,A,R>
Назначение и основные методы интерфейсов Sream<T> и Collector<T,A,R>.
Обзор вспомогательных классов и интерфейсов.
6.3 Применение Stream API
Общие правила применения Stream API.
Стандартные задачи, решаемые с помощью Stream API.
Пример класса, выполняющего «конвейерную» обработку данных.
Практические занятия
1. Сортировка строк.
2. Фильтрация данных.
3. Потоковое преобразование данных.
Тема 7. Основы ввода/вывода
7.1 Потоковая модель ввода/вывода
Основные термины и определения.
Обзор потоковой модели Java.
Основные типы потоков.
7.2 Основные абстрактные классы пакета java.io
Структура пакета java.io.
Назначение и основные методы абстрактных классов InputStream, OutputStream.
Назначение и основные методы абстрактных классов Reader и Writer.
Буферизация потоков ввода/вывода.
Основные классы для представления специализированных потоков ввода/вывода.
7.3 Работа с файлами
Класс File.
Классы FileInputStream и FileOutputStream.
Классы FileReader и FileWriter.
Класс RandomAccessFile
Практические занятия
1. Чтение данных с клавиатуры.
2. Вывод данных на экран.
3. Копирование содержимого файла.
4. Поиск заданной строки в файле.
Тема 8. Зачет