Основи мови програмування Java

  Протягом п'яти днів під керівництвом досвідченого інструктора студенти послідовно розглянуть синтаксис мови програмування Java, основи об'єктно-орієнтованого програмування з використанням Java, створення графічного інтерфейсу з допомогою Swing API, механізми обробки винятків, організації введення/виводу, роботу з потоками, а також створення мережевих додатків. Кожен модуль курсу включає обговорення теоретичних питань, яке завершується виконанням лабораторної роботи, що дозволяє студентам на власному досвіді переваги та недоліки технології. Для виконання лабораторних робіт курсу буде використовуватися Netbeans IDE, що дозволяє студентам познайомитися з цією чудовою середовищем розробки, навчитися документувати свої проекти, виконувати рефакторинг, налагодження та тестування коду, розробляти програми на платформі Netbeans. Також не будуть забуті питання використання шаблонів проектування, ML-проектування, кодогенерации і антипаттернов. По завершенні тренінгу студенти зможуть спробувати здати невеликий практичний тест і самостійно оцінити ступінь засвоєння матеріалу курсу і свою готовність до застосування отриманих знань на практиці. По завершенні тренінгу студенти зможуть спробувати здати невеликий практичний тест і самостійно оцінити ступінь засвоєння матеріалу курсу і свою готовність до застосування отриманих знань на практиці.

У ході тренінгу студенти навчаться:

  • Створювати об'єктно-орієнтовані Java-додатки з основних принципів ООП, таких як інкапсуляція, спадкування і поліморфізм
  • Компілювати в байт-код і запускати Java-додатки на виконання
  • Використовувати типи даних і вирази
  • Застосовувати механізми обробки виключень
  • Документувати свої додатки
  • Виконувати переформатування існуючого коду
  • Налагоджувати, тестувати і профілювати свої проекти
  • Проектувати програми за допомогою UML-діаграм і виконувати кодогенерацию і зворотний інжиніринг
  • Створювати графічні Java-додатки з використанням відповідних компонентів Swing API
  • Реалізувати введення/виведення для роботи з файловою системою
  • Створювати багатопотокові Java-додатки
  • Використовувати сокети для організації взаємодії в реальному часу за протоколом TCP/IP
  • Розробляти додатки для платформи Netbeans

Цільова аудиторія

Курс призначений для програмістів, які вже мають певний досвід разработчки з використанням інших мов та технологій програмування та зацікавлених у вивченні мови Java, плюс можливо, планують сертифікуватися на отримання статусу Oracle Certified Professional, Java Programmer.
  • Модуль 1 – Введення
    • Огляд технології Java
    • Переваги і недоліки Java в порівнянні з конкуруючими технологіями
    • Структура простого Java-додатки
    • Компіляція і запуск Java-додатки
    • IDE Netbeans. Основні можливості середовища розробки
    • Лабораторна робота
  • Модуль 2 – Об'єктно-орієнтоване програмування. Документування програм
    • Абстракція, інкапсуляція, і пакетування
    • Повторне використання Java-коду
    • Поняття класу, атрибутів, методів, конструкторів, пакетів
    • Використання модифікаторів доступу (private і public)
    • Виклик методів об'єкта класу
    • Використання онлайн-документації по Java API
    • JavaDoc-коментарі. Генерація документації в Netbeans
    • Лабораторна робота
  • Модуль 3 – Ідентифікатори, ключові слова і типи
    • Використання коментарів
    • Правила формування ідентифікаторів
    • Ключові слова мови Java
    • Примітивні типи даних
    • Числові та текстові типи
    • Посилальні типи
    • BigInteger і BigDecimal
    • Оголошення змінних
    • Створення об'єктів класу з використанням ключового слова new
    • Ініціалізація членів класу
    • Лабораторна робота
  • Модуль 4 – Вирази, управління виконанням програми
    • Instance - і локальні змінні
    • Ініціалізація переменнных
    • Основні оператори мови Java
    • Приведення типів при присвоювання значень змінним
    • Логічні вирази, особливості їх синтаксису і застосування
    • Використання основних алгоритмічних конструкцій (if, switch, for, while, do), ключові слова break і continue
    • Лабораторна робота
  • Модуль 5 – Масиви
    • Декларування масивів
    • Ініціалізація елементів масиву
    • Визначення кількості елементів масиву
    • Багатовимірні і зазубрені масиви
    • Операції над масивами, копіювання даних масиву в інший масив
    • Лабораторна робота
  • Модуль 6 – Проектування ієрархії класів. Знайомство з UML
    • Основні принципи ООП: інкапсуляція, успадкування, поліморфізм
    • Перевантаження і перевизначення методів
    • Використання модифікаторів доступу protected і default (package-friendly)
    • Використання конструкторів, створення декількох конструкторів класу
    • Процес створення та ініціалізації об'єкта
    • Знайомство з UML. Використання EasyUML для Netbeans
    • Кодогенерація на основі діаграми класів. Зворотний інжиніринг
    • Лабораторна робота
  • Модуль 7 – Особливості створення класів
    • Створення статичних змінних, методів та ініціалізаторів
    • Final-класи, методи та змінні
    • Створення і використання перерахувань
    • Використання статичної імпорту
    • Створення абстрактних класів і методів
    • Створення і використання інтерфейсів
    • Лабораторна робота
  • Модуль 8 – Рефакторинг. Типові архітектурні рішення і антипаттерни
    • Поняття про рефакторинг
    • Виконання рефакторингу в Netbeans
    • Патерни і антипаттерни
    • Типові помилки початківців розробників
    • Практична робота
  • Модуль 9 – Обробка помилок і виключень. Налагодження, тестування і профілювання
    • Обробка виняткових ситуацій
    • Блок try...catch...finally
    • Категорії винятків
    • Загальні типи винятків
    • Опис власних типів виключень
    • Налагодження коду в середовищі Netbeans
    • Поняття про тестуванні ПЗ. Unit-тести
    • Написання і виконання jUnit-тестів в Netbeans
    • Профілювання проекту в Netbeans
    • Лабораторна робота
  • Модуль 10 – Колекції і дженерики
    • Поняття колекції, особливості поведінки і використання колекцій
    • Інтерфейс Map
    • Використання generic-колекцій
    • Використання типів generic-класах
    • Переформатування існуючого коду
    • Перебір всіх елементів колекції
    • Лабораторна робота
  • Модуль 11 – Основи вводу-виводу
    • Робота з аргументами командного рядка і властивостями системи
    • Використання класу Properties
    • Серіалізація і десеріалізація об'єктів
    • Робота з потоками введення-виводу
    • Лабораторна робота
  • Модуль 12 – Робота з консоллю і файловою системою
    • Введення даних з консолі
    • Висновок на консоль
    • Файли і потоки введення-виводу
    • Лабораторна робота
  • Модуль 13 – Створення графічного інтерфейсу користувача
    • Огляд JFC і Swing
    • Структура Swing API, Swing-пакети
    • Основні інтерфейсні елементи: контейнери, компоненти і менеджери розмітки
    • Властивості контейнерів, компонентів і менеджерів розмітки
    • Опис однопотокового Swing-додатки
    • Побудова графічного інтерфейсу користувача за допомогою Swing
    • Поняття про JavaFX
    • Лабораторна робота
  • Модуль 14 – Обробка подій від інтерфейсних елементів
    • Типи і обробників подій
    • Модель подій Java SE
    • Поведінка графічного інтерфейсу, генерація подій
    • Обробка подій
    • Розпаралелювання обробки в Swing-додатку, використання класу SwingWorker
    • Лабораторна робота
  • Модуль 15 – Тонка настройка інтерфейсу
    • Створення меню та інших типових інтерфейсних елементів
    • Настройка властивостей компонентів (шрифти, кольори і т. д.)
    • Лабораторна робота
  • Модуль 16 – Багатопоточність в Java
    • Поняття потоку
    • Створення потоків
    • Управління потоками і написання крос-платформного багатопотокового коду
    • Проблеми при роботі декількох потоків з загальними даними
    • Використання wait і notify для управління потоками
    • Використання ключового слова synchronized для захисту даних
    • Лабораторна робота
  • Модуль 17 – Робота з мережею
    • Створення мережних підключень
    • Робота з TCP/IP
    • Класи для реалізації сервера і клієнта (ServerSocket і Socket)
    • Лабораторна робота
  • Модуль 18 – Розробка додатків для платформи Netbeans
    • Огляд платформи Netbeans
    • Розробка модулів
    • Розробка клієнтських додатків
    • Приклади додатків на платформі Netbeans
    • Практична робота
    • Підсумкове тестування
   
Для успішного освоєння матеріалу курсу слухачі повинні:
  • Мати уявлення про принципи об'єктно-орієнтованого програмування
  • Уміти створювати і компілювати прості C/C /C#-програми
  • Бажано (але не обов'язково) також проходження тренінгу.

Запис на курс

Код курсуEA-JavaIntro
Тривалість5д (40год)
Код екзамену
Вартість без ПДВ14 000 грн.
Найближчі дати
  • 18.09.2017
  • 25.09.2017
  • 27.11.2017