Сетевая Академия ЛАНИТ-ТИССА Казань
+7 (843) 533-39-21
  Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.

Java Разработка. Продвинутый курс

3AJP

Слушатели научатся анализировать XML-документы с использованием JAXP API. Будут подробно рассмотрены многопоточные приложения, разобраны ситуации race condition и deadlock. Слушатели также узнают, как использовать более сложные возможности ввода-вывода с сериализацией объектов и файловыми вводами-выводами с пакетом java.nio. Будет разобрано создание клиент/серверных приложений с использованием пакетов java.net и java.rmi. В завершение курса будут разобраны дополнительные темы JNDI и настройки производительности.


После изучения курса вы сможете:

  • Использовать возможности JDK 1.7 в приложениях.
  • Синхронизировать потоки многопоточных приложений.
  • Уметь выявлять и избегать ситуаций deadlock и race condition в приложениях
  • Разбирать XML документы, используя пакет
  • Работать с файлами, используя пакет java.nio
  • Разрабатывать клиент-серверные приложения, задействуя функционал пакетов java.net и java.rmi
  • Использовать возможности сервиса JNDI
  • Улучшать производительность уже написанных приложений
  • Отличать и использовать основные механизмы шифрования из пакета javax.crypto
  • Создавать нативные методы в программах на java

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

Модуль 1: Введение

  • Обзор курса и его цели
  • Рекомендуемые ссылки

Модуль 2: Обработка XML с использованием JAXP

  • Java API для обработки XML
  • Введение в SAX
  • SAX парсер и JAXP
  • SAX методы обработки событий
  • Введение в DOM
  • Разбор DOM с помощью JAXP
  • DOM API
  • Валидация
  • Преобразование

Модуль 3: Введение в потоки

  • Однопоточные приложения
  • Многопоточные приложения
  • Создание потоков
  • Состояния потоков
  • Состояние Runnable
  • Управление потоков
  • Прерывание потоков
  • Интерфейс Runnable
  • Группы потоков

Модуль 4: Синхронизация и распараллеливание потоков

  • Ситуация race condition
  • Синхронизированные методы
  • Ситуация deadlock
  • Синхронизированные блоки
  • Синхронизированные коллекции
  • Потокобезопасные колллекции
  • Взаимодействие потоков - метод wait()
  • Взаимодействие потоков - метод notify()
  • Интерфейс Executor
  • Интерфейс Callable

Модуль 5: Потоки ввода/вывода. Сериализация объектов

  • Что такое сериализация
  • Сериализация объектов
  • Запись объектов
  • Чтение объектов
  • Обработка исключений
  • Настройка сериализации
  • Управление сериализацией
  • Версионность

Модуль 6: Потоки ввода/вывода. NIO

  • Пакет java.nio.package
  • Класс Buffer и интерфейс Channel
  • Реализации Buffer
  • Методы класса Buffer
  • Методы класса ByteBuffer
  • Файловый поток
  • Блокировка файла
  • Класс MappedByteBuffer
  • Передача файлов между потоками
  • Символьные множества

Модуль 7: Механизм рефлексия

  • Введение в рефлексию
  • Класс Class
  • пакет reflect
  • Constructors
  • Fields
  • Methods
  • Обработка исключений и рефлексия
  • Java бины
  • Динамическое программирование

Модуль 8: Сетевой обмен данных с использованием сокетов

  • Клиент и сервер
  • Порт, адреса и протоколы
  • Класс Socket
  • Взаимодействие с использованием потоков ввода/вывода
  • Класс Server
  • Класс ServerSocket
  • Параллельные сервера
  • Класс URL
  • Класс ConnectionURL

Модуль 9: Удаленный вызов метода (RMI)

  • Распределенные приложения
  • Заглушки
  • Шаги для создания удаленного объекта
  • RMI клиент
  • RMI Сервер
  • RMI классы и интерфейсы
  • Класс Distribution
  • Передача параметров и сериализация

Модуль 10: Технология JNDI

  • Сервис именований и директорий
  • Пространство имен и контекст
  • Операции именования
  • Связывание
  • Атрибуты
  • Операции каталогов
  • Поиск DNS с помощью JNDI
  • JNDI в JavaEE

Модуль 11: Настройки производительности Java

  • Особенности оптимизации Java
  • Виртуальная машина HotSpot
  • Основные принципы работы сборщика мусора
  • Генерации сборщиков мусора
  • Алгоритмы работы сборщиков мусора
  • Создание объекта
  • Классы String, StringBuffer и StringBuilder
  • Синхронизация
  • Встроенные методы
  • Улучшенные коллекции

Модуль 12: Шифрование с использованием пакета javax.crypto (Опционально)

  • Основные принципы криптографии
  • Ключ шифрования
  • Алгоритмы шифрования
  • Режимы и схемы с дополнением
  • Класс Cipher
  • Шифрование и дешифровка данных
  • Cipher Output Stream
  • Cipher Input Stream
  • Шифрование с использованием паролей
  • Обмен ключами шифрования
  • Класс SealedObject

Модуль 13: Нативные методы (Опционально)

  • Обзор нативных методов в Java и JNI
  • Создание и использование нативныз методов в Java
  • Объявление нативных методов
  • Использование javah
  • Создание и реализация кода
  • Компиляция
  • Распространение
  • Использование нативных методов
  • JNI
  • Передача аргументов
  • Вызов java-методов из нативного кода
  • JNI сигнатура

Слушатели

Java-разработчики, которые желают усилить глубину знаний в Java-программировании и изучить использование различных дополнительных пакетов.

Продолжительность: 3 дн.
Цена: 15490 р.