Програмування та підтримка веб-застосувань

Відповідальний лектор

Колбасін В’ячеслав Олександрович

1. Вступ.

1.1. Предмет навчальної дисципліни, її наукові та методологічні основи, мета викладання і задачі дисципліни.

Предметом дисципліни являється створення та підтримка веб-застосувань з використанням платформи JVM та мови Java.

Науковою основою дисципліни є теорія комп’ютерних мереж, протоколи та технології глобальної мережі «Інтернет», технології створення складних багатошарових застосувань.

Методологічна основа викладання дисципліни базується на загальних принципах викладання дисциплін напрямку інформатики та включає теоретичні та лабораторні заняття, курсову роботу та самостійну роботу студента.

Мета викладання дисципліни – ознайомлення з сучасними методами створення та підтримки web-застосувань та їх використанням при створенні інформаційних систем і технологій. Створення веб-застосування у вигляді курсової роботи.

1.2. Що студент повинен знати, вміти та з чим повинен бути ознайомлений в результаті вивчення дисципліни.

В результаті вивчення дисципліни студент повинен знати:

  • Принципи побудови платформи JVM та мови Java;
  • Особливості об’єктно-орієнтованого програмування мовою Java;
  • Принципи роботи з колекціями та потоками введення/виведення в Java;
  • Технології сервлетів та серверних сторінок Java (JSP);
  • Підходи до створення веб-застосувань з використанням сервлетів та JSP;
  • Архітектуру та головні принципи технології доступу к даним JDBC;
  • Принципи доступу до даних у веб-застосуваннях;
  • Головні принципи та підходи до створення адаптивних веб-застосувань;

В результаті вивчення дисципліни студент повинен вміти:

  • Створювати об’єктно-орієнтовані застосування мовою Java;
  • Використовувати стандартні колекції та потоки введення/виведення;
  • Розробляти веб-застосування за допомогою технологій сервлетів та JSP;
  • Реалізовувати доступ до баз даних із середини веб-застосувань;
  • Реалізовувати розділення користувачів до різних частин застосування.

1.3. Організаційно-методичні вказівки щодо організації і методики проведення усіх видів навчальних занять, організації і виконання індивідуальних завдань.

Організаційно-методичними вказівками для організації і проведення занять є комплект з методичних вказівок для проведення занять загальним обсягом 48 сторінок. Ці методичні вказівки також доступні студентам в електронному вигляді.

1.4. Система контролю якості навчання студентів.

Контроль якості навчання студентів здійснюється проведенням модульного контролю згідно з переліком контрольних робіт, виконанням студентами курсової роботи та лабораторних робіт, складанням студентами вихідного іспиту.

1.5. Организация самостоятельной работы.

Для організації самостійної роботи студентів виділяється час для використання обчислювальної техніки. Під час самостійної роботи студенти вивчають передбачений для самостійної роботи матеріал, досліджують засоби, які передбачені лабораторними роботами, готують звіти з виконаних лабораторних робіт.

2. Зміст дисципліни.

Розділ 1. Основи платформи JVM та мови Java.

Тема 1. Головні принципи побудови платформи Java.

Тема 2. Основні алгоритмічні конструкції мови Java.

Розділ 2. Об’єктна архітектура Java.

Тема 1. Особливості класів та об’єктно-орієнтованого програмування мовою Java.

Тема 2. Інтерфейси.

Тема 3. Пакети в Java.

Тема 4. Обробка помилок за допомогою виключень.

Тема 5. Внутрішні класи та ітератори.

Тема 6. Родові класи (Generics). Маски у родових класах, коваріантність та контрваріантність типів.

Розділ 3. Стандартні бібліотеці класів Java.

Тема 1. Базовий клас Object. Класи-оболонки. Класи для роботи з рядками.

Тема 2. Колекції в стандартній бібліотеці.

Тема 3. Класи вводу/виводу. Потоковий ввід/вивід. Серіалізація.

Тема 4. Рефлексія. Анотації.

Тема 5. Основи паралельного та багатопоточного програмування в Java.

Розділ 4. Сервлети та серверні сторінки Java.

Тема 1. Підходи до створення динамічних веб-застосувань.

Тема 2. Поняття сервлету. Контейнер сервлетів та життевий цикл сервлету. Збирання та розміщення веб-застосування на сервері.

Тема 3. Серверні сторінки Java (JSP). Проблеми створення великих веб-застосувань за допомогою JSP. Підхід «JSP Model 2».

Тема 4. Теги користувача та бібліотека JSTL.

Тема 5. Робота з куками у Servlet API. Робота з веб сеансами у Servlet API.

Тема 6. Валідація та обробка даних форми у веб-застосуваннях. Обробка POST-запитів та патерн Post-Redirect-Get. Обробка помилок у веб-застосуваннях.

Розділ 5. Доступ до баз даних із веб-застосувань.

Тема 1. Технологія Java Database Connectivity (JDBC).

Тема 2. Робота з транзакціями в JDBC. Патерни Repository та Transaction Manager.

Розділ 6. Безпека веб-застосувань.

Тема 1. Розділення доступу у веб-застосуваннях.

Тема 2. Сервлети фільтрації. Розділення доступу за допомогою сервлетів фільтрації.

Розділ 7. Адаптивні веб-застосування.

Тема 1. Технологія Ajax.

Тема 2. Застосування Ajax у веб-застосуваннях. Одно сторінкові застосування (Single Page Applications).

Тема 3. Локалізація веб-застосувань.

Тема 4. Обробка подій життєвого циклу веб-застосування.