Веб-застосунок
Веб-застосунок — розподілений застосунок, в якому клієнтом виступає браузер, а сервером — веб-сервер. Браузер може бути реалізацією так званих тонких клієнтів. Браузер здатний відображати веб-сторінки і, зазвичай, входить до складу операційної системи, а його оновлення і супровід здійснює постачальник операційної системи. Логіка застосунку зосереджується на сервері, а функція браузера полягає переважно у відображенні інформації, завантаженої мережею з сервера, і передачі назад даних користувача. Однією з переваг такого підходу є той факт, що клієнти не залежать від конкретної операційної системи користувача, тому веб-застосунки є міжплатформовими сервісами. Унаслідок цієї універсальності і відносної простоти розробки веб-застосунки стали широко популярними в кінці 1990-х — початку 2000-х років.
Зміст |
Технічні особливості [ред.]
Істотною перевагою побудови веб-застосунків для підтримки стандартних функцій браузера є те, що функції повинні виконуватися незалежно від операційної системи клієнта. Замість того, щоб писати різні версії для Microsoft Windows, Mac OS X, GNU/Linux й інших операційних систем, застосунок створюється один раз для довільно обраної платформи і на ній розгортається. Проте різна реалізація HTML, CSS, DOM й інших специфікацій в браузерах може викликати проблеми при розробці веб-застосунків і подальшої підтримки. Крім того, можливість користувача настроювати багато параметрів браузера (наприклад, розмір шрифту, кольори, відключення підтримки сценаріїв) може перешкоджати коректній роботі застосунку.
Інший (менш універсальний) підхід полягає у використанні Adobe Flash або Java-аплетів для повної або часткової реалізації призначеного для користувача інтерфейсу. Оскільки більшість браузерів підтримують ці технології (зазвичай, за допомогою плагінів), Flash- або Java-застосунки можуть легко виконуватись. Оскільки вони надають програмістові більший контроль над інтерфейсом, то здатні обходити багато несумісностей у конфігураціях браузерів, хоча несумісність між Java або Flash реалізаціями клієнта може спричиняти різні ускладнення. У зв'язку з архітектурною схожістю з традиційними клієнт-серверними застосунками, певним чином «товстими» клієнтами, існують суперечки щодо коректності зарахування подібних систем до веб-застосунків; альтернативний термін «Насичений інтернет-застосунок» (англ. Rich Internet Application).
Архітектура веб-застосунків [ред.]
Веб-застосунок отримує запит від клієнта і виконує обчислення, після цього формує веб-сторінку і відправляє її клієнтові мережею з використанням протоколу HTTP. Саме веб-застосунок може бути клієнтом інших служб, наприклад, бази даних або стороннього веб-застосунку, розташованого на іншому сервері. Яскравим прикладом веб-застосунку є система управління вмістом статей Вікіпедії: безліч її учасників можуть брати участь у створенні мережевої енциклопедії, використовуючи для цього браузери своїх операційних систем (Microsoft Windows, GNU/Linux або будь-якої іншої операційної системи) без завантаження додаткових виконуваних модулів для роботи з базою даних статей.
Для більшої інтерактивності і продуктивності розроблений новий підхід до розробки веб-застосунків, названий AJAX, і який нині є стандартним де-факто. При використанні Ajax сторінки веб-застосунку здатні відправляти веб-запити до сервера у фоновому режимі, і не перезавантажуються цілком, а лише довантажують необхідні дані з сервера, що значно пришвидшує роботу і робить її зручнішою.
Для створення веб-застосунків використовуються різноманітні серверні технології та мови програмування
| Назва | Ліцензія | Веб-сервер |
|---|---|---|
| ASP | власницька | спеціалізований |
| ASP.NET | власницька | спеціалізований |
| Java | вільна | безліч, зокрема вільних |
| Perl | вільна | практично будь-який |
| PHP | вільна | практично будь-який |
| Python | вільна | практично будь-який |
| Ruby | вільна | практично будь-який |
Клієнтська частина може використовувати:
- JavaScript
- Flash
- Java / JavaFX
- ActiveX
- Silverlight
Література [ред.]
- Марко Беллиньясо Разработка Web-приложений в среде ASP.NET 2.0: задача — проект — решение = ASP.NET 2.0 Website Programming: Problem — Design — Solution. — М.: «Диалектика», 2007. — С. 640. — ISBN 0-7645-8464-2
- Олищук Андрей Владимирович Разработка Web-приложений на PHP 5. Профессиональная работа. — М.: «Вильямс», 2006. — С. 352. — ISBN 5-8459-0944-9
Посилання [ред.]
Ресурси Інтернету [ред.]
- Web Applications Working Group at the World Wide Web Consortium (W3C)