Методика проектування web-додатків з використанням платформи Java EE

Авторы

Орда О., Анопрієнко О.Я.

Источник

Статья в электронной библиотеке ДонНТУ (в PDF формате)

Вступ

Проектування додатків для Web є складною задачею в першу чергу тому, що для її вирішення треба володіти, з одного боку, теоретичними знаннями в декількох різних областях, з іншого боку, практичними навичками роботи з різноманітними засобами. У даній доповіді розглядаються, по-перше, сучасна архітектура Web- додатків, по-друге, той набір засобів, що підтримується платформою Java та їхній зв’язок із архітектурою Web-додатку. На базі цього у даній роботі пропонується методика, яка визначає порядок та спосіб застосування цих засобів задля ефективного проектування Web- додатків.

Архітектура Web-додатку

Відповідно до [1] найбільш сучасною та широко застосовуваною архітектурою для побудови Web-додатку є багаторівнева архітектура [2] (рис. 1).

pic1

Рисунок 1 – Багаторівнева архітектура Web-додатку

Дана архітектура включає три основні рівні (табл. 1).

Таблиця 1 – Елементи багаторівневої архітектури Web-додатку

Назва рівню Призначення
джерело даних відповідає за збереження даних, що є необхідними для роботи Web-додатку та надання доступу до них
бізнес-логіка відповідає за реалізацію логіки Web-додатк
представлення відповідає за взаємодію із користувачем

Проектування Web-додатку передбачає використання «тонкого клієнту». Тобто на боці користувача не може бути використано спеціалізоване програмне забезпечення. Взаємодія із користувачем на фізичному рівні може відбуватися тільки за допомогою загального протоколу http. Отже рівень представлення відповідає, в першу чергу, саме за організацію взаємодії із «тонким клієнтом» (тобто браузером).

Засоби підтримувані платформою Java

Для кожного з рівнів наведеної вище архітектури існують специфічні засоби, які дозволяють ефективно реалізувати необхідну функціональність. Ці засоби групуються, в першу чергу, у відповідності до платформи, яку обирає розробник додатку. На даний момент можна виділити дві найбільш відомі і широко застосовувані платформи: .NET та Java.

На рис. 2 показана відповідність між загальновідомими засобами та елементами архітектури, розглянутої раніше. Розглянемо призначення кожного із засобів (табл. 2).

У відповідності до [1] об’єктно-реляційне відображення є важливою проблемою, яка виникає в процесі проектування гетерогенних систем (таких, що мають компоненти із різною природою), тому рішення у вигляді використання загальновідомої бібліотеки є важливим аспектом побудови додатку.

pic2

Рисунок 2 – Засоби платформи Java використовувані для проектування Web-додатку

Таблиця 2 – Призначення технічних засобів

Засіб Призначення
СКБД MySQL Система керування базами даних із відкритим кодом, яка найчастіше застосовується для малих та середніх проектів. Використовується для безпосереднього керування даними Web-додатку
Hibernate Бібліотека, яка забезпечую взаємне відображення між реляційним структурами СКБД MySQL та об’єктно-орієнтованим структурами Java програми.
Java Server Faces Бібліотека, що дозволяє спростити розробку інтерфейсу користувача. Зокрема дозволяє встановити зв’язки між Java програмою та кодом HTML, що використовується у браузерах.
GlassFish Сервер додатків, який забезпечує доступ до платформи Java EE.

Крім того, важливою проблемою є й організація зв’язків поміж моделлю (тобто бізнес-логікою додатку) та представленням (тобто, кінцевим HTML кодом, який буде відображуватися браузером клієнта). У даному випадку також найкращим варіантом є використання загальновідомої бібліотеки.

Методика розробки Web-додатку

Першим кроком при розробці Web-додатку є вивчення предметної області цього додатку. Результатом цього є побудова моделі предметної області, або доменної моделі. Ця модель, в подальшому, буде використана для побудови (рис. 3):

1. Реляційної моделі бази даних.
2. Об’єктно-орієнтованої моделі Java програми.

Перетворення моделі предметної області у об’єктно- орієнтовану модель для Java програми є достатньо простим процесом. З іншого боку отримання реляційної моделі практично завжди потребує додаткових затрат, зокрема, із-за її обмеженості. Існують засоби, які дозволяють отримати реляційну модель на основі об’єктно-орієнтованої (так званий процес зворотної інженерії), але й у цьому разі необхідно інспектувати отримані результати.

pic3

Рисунок 3 – Використання моделі предметної області

У разі використання бібліотеки Hibernate, об’єктно- орієнтована модель потребує анотування у відповідності до правил, що є визначені цією бібліотекою. Використання анотацій дозволяє скоротити об’єм коду, що відповідає за організацію зв’язку із базою даних та зробити його більш понятим.

Після завершення побудови моделі предметної області та відповідних моделей для СКБД та Java програми можна переходити до створення бізнес-логіки. Цей процес є основним етапом побудови додатку і може потребувати повернення до попереднього задля покращення моделей у відповідності до потреб додатку.

Третім кроком, є побудова інтерфейсу із користувачем. Цей етап включає кілька пунктів. По-перше, необхідно визначити сценарії поведінки користувача та відповідні ним елементи бізнес- логіки. Згідно цих сценаріїв можна побудувати інтерфейс на базі мови HTML. По-друге, необхідно встановити безпосередні зв’язки між сценаріями та конкретними класами бізнес-логіки та їхніми методами. Для цього використовуються елементи бібліотеки JSF (рис. 4).

pic3

Рисунок 4 – Організація інтерфейсу користувача

Висновки

У даній статі було розглянуто питання побудови сучасних Web-додатків на базі платформи Java EE. Наведений у роботі розгляд включав, по-перше, аналіз архітектури таких додатків, по-друге, технічні засоби, використовувані для реалізації компонентів цієї архітектури. Також у статті запропонована узагальнена методика розробки Web-додатків, детальна розробка якої буде виконана в рамках відповідної кваліфікаційної роботи магістра.

Література

1. Фаулер М. Архитектура корпоративных программных приложений / Фаулер М., Райс Д., Фомелл М., Хайт Э., Ми Р., Стаффорд Р. – Пер. с англ. – М.: И.Д. «Вильямс», 2006. – 544с.:ил.

2. Хорстманн, Кей С., Корнелл Гари Java2. Основы, 7-е изд,: Пер. с англ. – М.: И.Д. «Вильямс», 2006. – 896 с.:ил.