info@lionsoft.ru Оставить заявку

Курсы Java SE11 and Java EE8


Курс "Java Standard Edition 11 (Java SE11). Язык программирования Java, базовый курс

В предлагаемом курсе изучается платформа Java Standard Edition 11 (Java SE11) и дается описание синтаксиса языка Java, основ объектно-ориентированного программирования для лиц, начинающих изучение языка Java 
Длительность курса: 5 дня. Курс проводится в офисе компании заказчика или дистанционно. 
Стоимость - 5000 рублей в день с каждого слушателя. При большой группе возможны скидки. Максимальный размер одной группы 10-15 человек. 
На курсе изучаются следующие темы: понимание классов и объектов, абстрактных классов, интерфейсов, наследования, основные пакеты Java, система исключений, класс String, интерфейс Collections, ввод-вывод, класс Class, загрузка классов, механизм Reflection, сериализация объектов, клонирование объектов, работа с аннотациями в Java, настраиваемые классы или Generics в Java, основы многопоточного программирования, основы программирования для сетей, сборка Java проектов – Ant, Maven и Gradle, переход от Java SE к Java EE. 

Программа курса 

Модуль 1. Введение в Java, обзор платформ и технологий. Функциональные связи.

  • Введение в Java. История создания. Преимущества. 
  • Java Standard Edition 11 (Java SE11). Новые возможности.

Модуль 2. Синтаксис Java

  • Словарь Java. 
  • Примитивные и объектные типы в Java. 
  • Операторы. 
  • Управляющие структуры. 
  • История развития языка, нововведения от JDK 1.5 до последней редакции.

Модуль 3. Объектно-ориентированное программирование (OOP) в Java

  • Процедурное и объектно-ориентированное программирование. Инкапсуляция. 
  • Объекты и объектные переменные. Сборка мусора. 
  • Пакеты. Уровни видимости классов. Импорт классов. 
  • Введение в NetBeans и IntelliJ IDEA. 
  • Документирование кода в Java. Javadoc.

Модуль 4. Наследование и полиморфизм, базовый класс Object

  • Построение иерархии классов. Диаграммы классов UML. 
  • Методы. Модификаторы. Передача примитивных типов в методы. 
  • Локальные и глобальные переменные. 
  • Модификаторы доступа и правила видимости. Зарезервированное слово this. 
  • Передача ссылочных типов в методы. 
  • Наследование. Суперклассы и подклассы. Переопределение методов. 
  • Наследование и правила видимости. Зарезервированное слово super. 
  • Статическое и динамическое связывание методов. Полиморфизм. 
  • Базовый класс Object. 
  • Конструкторы. Зарезервированные слова super и this. 
  • Блоки инициализации. 
  • Удаление неиспользуемых объектов и метод finalize. 
  • Проблема деструкторов для сложно устроенных объектов. 
  • Перегрузка методов. 
  • Правила совместимости ссылочных типов. Приведение и проверка типов. 
  • Рефакторинг. 
  • Реверс-инжиниринг.

Модуль 5. Интерфейсы в Java

  • Проблемы множественного наследования классов. Интерфейсы. 
  • Отличия интерфейсов от классов. Наследование интерфейсов. 
  • Пример использования интерфейсов. 
  • Композиция как альтернатива множественному наследованию.

Модуль 6. Встроенные классы

  • Вложенные (Nested) классы. 
  • Внутренние (Inner) классы. 
  • Локальные (local) классы. 
  • Анонимные (безымянные) классы и обработчики событий.

Модуль 7. Исключения в Java 

  • Система исключения в Java. 
  • try-with-resources: нововведения JDK 1.7. 
  • Assertions или проверка утверждений.

Модуль 8. Основные пакеты и интерфейсы Java

  • Обзор основных пакетов Java. 
  • Массивы в Java. 
  • Классы String, StringBuffer, StringBuilder, StringTokenizer. 
  • Классы ввода-вывода. Файловый ввод-вывод.

Модуль 9. Generics или настраиваемые классы в Java

  • Понимание настраиваемых классов или Generics. 
  • Написание кода, поддерживающего Generics.

Модуль 10. Коллекции в Java

  • Интерфейс Collections. 
  • Практическое применение Generics.

Модуль 11. Аннотации в Java

  • Понимание аннотаций. 
  • Создание собственных аннотаций. 
  • Обработка аннотаций.

Модуль 12. Улучшения языка java, появившиеся в JDK1.5 - 1.9

  • Автоматическая упаковка и распаковка. 
  • Перечислимый тип enum. 
  • Улучшенные языковые конструкции (циклы for). 
  • Аргументы переменной длинны. 
  • Изменения в интефейсах. 
  • Класс Optional. 
  • Литералы коллекций. 
  • Изменения в try-with-resources.

Модуль 13. Лямбда-выражения, функциональные интерфейсы и Streaming API в JDK 1.8

  • Понимание лямбда-выражений в java, функциональные интерфейсы. 
  • Новый Streaming API. 
  • Практическое применение.

Модуль 14. Загрузчики классов в Java и API Reflection

  • Порядок действий VM при загрузке класса. 
  • Способы загрузки классов. 
  • Создание собственного загрузчика классов. 
  • Пример создания загрузчика зашифрованных классов. 
  • Загрузка классов методом forName (…). 
  • Создание объектов класса Class. 
  • Исследование объекта. 
  • Класс java.lang.reflect.Method. Пример приложения. 
  • Компилирование исходного текста из приложения Java. Пример. 
  • Выгрузка и Перезагрузка Классов. Пример приложения. 
  • Приложение RunItReload , выгружающее и загружающее классы. 
  • Загрузка классов через Сеть. Класс URLClassLoader.

Модуль 15. Сериализация Java-объектов

  • Что такое Сериализация и где применяется. 
  • Как сериализация может использоваться в RMI. 
  • Автоматическая сериализация. Интерфейс Serilizable .Пример. 
  • Сериализация с применением интерфейса Externalizable. Пример. 
  • Восстановления объекта и Reflection. Пример приложения. 
  • Управление сериализацией посредством transient. Пример приложения. 
  • Альтернатива Externalizable – методы writeObject() и readObject(). 
  • Сериализация static членов классов. 
  • Глубокое клонирование объектов через сериализацию. Пример с Reflection.

Модуль 16. Введение в многопоточное программирование

  • Введение в многопоточную архитектуру. 
  • Базовые классы для работы с потоками – класс Thread, интерфейс Runnable. 
  • Синхронизация, Блокировки.

Модуль 17. Введение в сетевое программирование

  • Введение в сетевое программирование, сокеты. 
  • Классы Soket и ServerSocket, написание простого сетевого клиента и сервера.

Модуль 18. Модульная структура java приложений в JDK 1.9

  • Понимание модульной структуры приложений в java 11.

Модуль 19. Сборка Java программ: Ant, Maven и Gradle

  • Сборка java-проектов при помощи средств Ant, Maven и Gradle.

Модуль 20. От Java SE к Java EE

  • Знакомство с платформой Java EE, понимание взаимосвязей с Java SE, новые возможности Java EE8.

В конце обучения на курсе проводится итоговая аттестация в виде теста или на основании оценок за практические работы, выполненных в процессе обучения.




Заявка