Жизнь после "восьмерки": новый функционал в JDK9 и далее

Life After Java 8: New Features in JDK 9 and Beyond
Rating: 4.7 out of 5 (29 ratings)
676 students
Жизнь после "восьмерки": новый функционал в JDK9 и далее
Rating: 4.7 out of 5 (29 ratings)
676 students
Новый функционал в Java, начиная с версии 9

Requirements

  • Знание базовых синтаксических конструкций языка Java
Description

Свыше 4,5 часов видеолекций с разбором наиболее важных или интересных нововведений, появившихся в Джаве начиная с JDK9 (и да, это действительно означает, что в курсе встречаются фичи из последующих версий, в частности, 10-й и 11-й).

✓ Центральное место курса занимает модульная система, ее возможности и особенности.

✓ Еще одно флагманское нововведение — REPL-инструмент JShell; тоже обстоятельно знакомимся.

✓ Упор сделан на кодовые примеры, хотя и теорчасть тоже присутствует в достаточном объеме; будем надеяться, это позволит слушателям уверенно использовать новый функционал и полученные навыки в своей работе или учебе.

✓ Все видеолекции можно свободно скачивать, PowerPoint-презентации и кодовая база также полностью доступны.

✓ Курс имеет открытую тематику и будет пополняться новыми лекциями по мере появления новых версий Джавы.

При разборе учебного материала задействована в первую очередь командная строка; для демонстрации отдельных возможностей привлечены среды разработки NetBeans, Intellij IDEA и Eclipse, а также фреймворк JUnit (если не знакомы с каким-то из этих инструментов — не страшно: усвоению темы это не помешает).


Требуемый уровень подготовки
Начальный — средний


Целевая аудитория
Курс рассчитан в первую очередь на программистов, желающих подробнее узнать о флагманских нововведениях по мере выхода очередных релизов Джавы.

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

Часть 1 — Модульная система (~3 часов видеолекций)

  • Подготовка учебной среды

  • Причины для модуляризации

  • Модульное приложение — работа с командной строки

  • Модульное приложение — работа в среде NetBeans

  • Ключевое слово requires — работа с командной строки

  • Ключевое слово requires transitive — работа в среде Intellij IDEA

  • Ключевое слово exports — работа с командной строки

  • Ключевое слово exports to — работа в среде Eclipse

  • Модуляризованный механизм загрузки служб на классе ServiceLoader; ключевые словая provides и with

  • Безымянный модуль (Unnamed Module)

  • Анализатор зависимостей jdeps

  • Безымянный модуль (Unnamed Module)

  • Автоматические модули (Automatic Modules)

  • Знакомство с Module API

  • Генератор исполнимого образа приложения jlink

Часть 2 — JShell (~30 минут видеолекций)

  • Основные приемы работы

  • Изменение дефиниций

  • Форвардные ссылки

  • Обработка исключений в JShell

  • Полезные команды

  • Работа с class path'ом и module path'ом

  • Встроенные скрипты

  • Стартовые скрипты

Часть 3 — Новый API и др. (~1 час видеолекций)

  • Приватные методы в интерфейсах

  • Объявление локальной переменной var

  • Усовершенствованный try-with-resources

  • Немутирующие коллекции

  • Ромбовидный оператор в анонимных внутренних классах

  • Бескомпиляторный запуск приложения

  • Знакомство с Process API

  • Апдейты в интерфейсе Stream

  • Апдейты в классе Optional

Who this course is for:
  • Начинающие программисты
Course content
3 sections • 50 lectures • 5h 9m total length
  • Введение --- Тематика курса
    01:58
  • Модульная система: первое знакомство
    05:09
  • Демонстрация (не)желательного класса sun.misc.Unsafe
    07:10
  • Причины для модуляризации
    16:55
  • Модульный HelloWorld --- работа с CLI
    09:30
  • Версионность в имени модуля
    03:27
  • Модульный HelloWorld --- в среде NetBeans
    07:27
  • requires --- работа с CLI
    09:49
  • requires transitive --- в среде Intellij IDEA
    12:53
  • exports --- работа с CLI
    17:02
  • exports to --- в среде Eclipse
    08:53
  • Загрузка служб (класс ServiceLoader) --- Теорчасть
    06:18
  • Загрузка служб --- консольный имплементатор
    09:12
  • Загрузка служб --- Swing-имплементатор
    06:32
  • Безымянный модуль (Unnamed Module) --- Теорчасть
    02:04
  • Безымянный модуль --- Практикум
    06:37
  • Анализатор зависимостей jdeps
    03:07
  • Автоматические модули (Automatic Modules) --- Теорчасть
    05:14
  • Автоматические модули --- Практикум
    05:29
  • ФАКУЛЬТАТИВ --- Работа с (немодуляризованными) JAR-файлами: создание, манифест
    24:04
  • Введение в Module API
    01:44
  • Создание исполняемого образа с помощью jlink --- Теорчасть
    03:21
  • Создание исполняемого образа с помощью jlink --- Практикум
    06:39
  • JShell --- Общая идея
    05:09
  • Основные приемы работы
    07:05
  • Изменение дефиниций
    01:44
  • Форвардные ссылки
    02:22
  • Исключения
    01:23
  • Команды
    03:28
  • Работа с classpath'ом и modulepath'ом
    04:27
  • Встроенные скрипты
    01:43
  • Стартовые скрипты, часть 1
    02:38
  • Стартовые скрипты, часть 2
    01:24
  • Стартовые скрипты, часть 3
    01:08
  • Пример: НТТР-клиент
    01:32
  • Приватные методы в интерфейсах
    06:36
  • Декларация локальных переменных var --- Теорчасть
    03:43
  • Декларация локальных переменных var --- Практика
    05:15
  • Доработанный try-with-resources --- Теорчасть
    03:35
  • Доработанный try-with-resources --- Практика
    01:50
  • Немутирующие коллекции
    10:58
  • Ромбовидный оператор в анонимных внутренних классах
    08:13
  • Бескомпиляторный запуск приложений
    05:24
  • Process API
    03:13
  • Апдейты в интерфейсе Stream
    03:40
  • Апдейты в классе Optional
    06:39
  • Паттерн "Observer" --- Часть 1 из 4 --- Теория
    03:05
  • Паттерн "Observer" --- Часть 2 из 4 --- Самодельная имплементация
    05:50
  • Паттерн "Observer" --- Часть 3 из 4 --- Имплементация через Observer/Observable
    09:47
  • Паттерн "Observer" --- Часть 4 из 4 --- Имплементация через Java Beans
    16:36

Instructor
Преподаватель-практик по программированию на языке Java
Igor Soudakevitch
  • 4.6 Instructor Rating
  • 153 Reviews
  • 1,051 Students
  • 3 Courses

Oracle Certified Professional, Oracle Authorized Instructor

     Сертифицированный Java-разработчик

     Java-методист c 15-летним опытом

     Консультант-репетитор по Java-сертификации


Вендоры и учебн-консультационные центры :

     корпорация «Оракл»;

     УКЦ «Академия АйТи»;

     УКЦ «Форс»;

     УКЦ «Люксофт»


Основное направление преподавания:

     «Java как первый язык программирования», в т.ч.:

     • базовые конструкции и идиомы;

     • основы ООП;

     • фундаментальные библиотечные классы;

     • навыки работы с интегрированными средами


Специализация:

     • подготовка к сдаче сертификационных экзаменов OCA Java SE8 Programmer I (код экзамена 1Z0-808) и OCP Java SE8 Programmer II (код 1Z0-809);

     • каркас модульного тестирования JUnit 4/5;

     • тюнинг и оптимизация JVM.

По желанию студентов занятия могут вестись полностью на английском.


Профессиональные интересы сосредоточены в области:

     • лексикографического программирования,

     • роботизации на базе Raspberry Pi + Arduino,

     • разработки Android-приложений