Java SE 7 Programming

Продолжительность курса — 5 дней

Описание Услуги

Второй из двух курсов, основанных на Java Standard Edition 7 (Java SE 7) Platform, охватывает базовые интерфейсы прикладного программирования (API), используемые для построения объектно-ориентированных приложений с помощью Java. Слушатели обучаются создавать классы-наследники от других классов, осуществлять наследование от абстрактных классов и использовать интерфейсы. Они обучаются правильно использовать исключения, Collections Framework, и создавать приложения для работы с файлами, директориями и файловыми системами. Рассмотрены также создание программ базз данных с применением JDBC, и правильное написание многопоточных приложений. Курс может быть полезен для совершенствования навыков программирования на языке Java и при подготовке к экзамену Oracle Certified Professional, Java SE 7 Programmer.

01. Цель курса

  • Осуществление нескольких операций над таблицами базы данных, включая создание, чтение, обновление и удаление с помощью технологии JDBC
  • Обработка строк с помощью регулярных выражений
  • Создание высокопроизводительных многопотоковых приложений, избегающих взаимной блокировки
  • Локализация Java приложений
  • Создание приложений, использующих Java Collections Framework
  • Реализация техники обработки ошибок путем обработки исключений
  • Реализация функциональных возможностей ввода/вывода (I/O) для чтения из текстовых файлов и файлов данных и записи в них и понимание дополнительных возможностей I/O потоков
  • Манипулирование файлами, директориями и файловыми системами с использованием спецификации JDK7 NIO.2
  • Применение общих шаблонов проектирования и общие рекомендации
  • Создание Java приложений, удовлетворяющих объектно-ориентированным принципам, таким как инкапсуляция, наследование и полиморфизм
  • Выполнение Java приложения из командной строки

02. Аудитория

  • Java разработчики
  • Разработчики
  • J2EE Разработчики
  • Java EE Разработчики

03. Необходимая подготовка

  • Понимание объектно-ориентированных принципов
  • Основные представления о концепциях баз данных и синтаксисе SQL
  • Прослушивание курса Java SE7 Fundamentals или знакомство с языком Java — способность создавать, компилировать и выполнять программы
  • Experience with at least one programming language

Содержание курса

01. Обзор платформы Java

  • Введение
  • Расписание курса
  • Обзор Java
  • Платформы Java
  • OpenJDK
  • Лицензирование
  • Java в серверном окружении
  • Java Community Process

03. Инкапсуляция и полиморфизм

  • Инкапсуляция при проектировании Java класса
  • Моделирование задач бизнеса с помощью Java классов
  • Неизменяемость
  • Создание подклассов
  • Перегрузка методов
  • Методы с переменными аргументами

04. Проектирование Java классов

  • Модификаторы доступа: private, protected и public
  • Переопределение метода
  • Перегрузка конструктора
  • Оператор instanceof
  • Вызов виртуального метода
  • Полиморфизм
  • Приведение объектных ссылок
  • Переопределение методов Object

05. Дополнительные вопросы проектирования классов

  • Абстрактные классы и обобщение типов
  • Модификаторы static и final
  • Модификаторы полей — общие рекомендации
  • Шаблон проектирования Singleton
  • Проектирование абстрактных классов
  • Вложенные классы
  • Перечислимые типы

08. Обработка строк

  • Манипулирование строками с помощью StringBuilder и StringBuffer
  • Основные методы String
  • Разбор текста в Java
  • Обработка ввода с помощью Scanner
  • Вывод текста и форматирование
  • Регулярные выражения с использованием классов Pattern и Matcher

09. Исключения и Assertions

  • Категории исключений
  • Классы стандартных исключений Java
  • Создание пользовательских классов исключений
  • Использование предложений try-catch и finally
  • Использование try-with-resources и интерфейса AutoCloseable
  • Возможность multi-catch
  • Обработка исключений — общие рекомендации
  • Assertions

10. Основы ввода/вывода

  • I/O средствами Java
  • Чтение входного потока консоли
  • Запись на console
  • Использование I/O потоков
  • Цепочки I/O потоков
  • Канальный I/O
  • Запись и чтение объектов с использованием сериализации

11. Файловый ввод/вывод с использованием NIO 2

  • Интерфейс Path
  • Класс Files
  • Операции Directory и File
  • Управление атрибутами файловой системы
  • Чтение, запись и создание файлов
  • Отслеживание изменений файловой системы for file system changes

12. Многопоточность

  • Планирование выполнения заданий операционной системы
  • Многопотоковое окружение
  • Создание многопотоковых решений
  • Общий доступ потоков к данным
  • Синхронизация и взаимная блокировка
  • Неизменяемые объекты

13. Конкурентность

  • Создание атомарных переменных
  • Использование Read-Write блокировок
  • Потоко-безопасные коллекции
  • Конкурентные синхронизаторы (семафоры, фазировщики и др.)
  • Исполнители и пулы потоков для конкурентного планирования заданий
  • Параллелизм и фреймворк Fork-Join

15. Локализация

  • Преимущества локализации
  • Определение локали
  • Чтение и установка локали с помощью объекта Locale
  • Связанные ресурсы
  • Форматирование сообщений, дат и чисел