Вебзастосунок

(Перенаправлено з Веб-застосунки)

Вебзастосунок (іноді вебдодаток) — розподілений застосунок, в якому клієнтом виступає браузер, а сервером — вебсервер. Браузер може бути реалізацією так званих тонких клієнтів — логіка застосунку зосереджується на сервері, а функція браузера полягає переважно у зображенні інформації, завантаженої мережею з сервера, і передачі назад даних користувача. Однією з переваг такого підходу є той факт, що клієнти не залежать від конкретної операційної системи користувача, тому вебзастосунки є міжплатформовими сервісами. Унаслідок цієї універсальності й відносної простоти розробки вебзастосунки стали широко популярними в кінці 1990-х — початку 2000-х років.

Технічні особливості ред.

Істотною перевагою побудови вебзастосунків для підтримки стандартних функцій браузера є те, що функції повинні виконуватися незалежно від операційної системи клієнта. Замість того, щоб писати різні версії для Microsoft Windows, Mac OS X, GNU/Linux й інших операційних систем, застосунок створюється один раз для довільно обраної платформи та на ній розгортається. Проте різна реалізація HTML, CSS, DOM й інших специфікацій в браузерах може викликати проблеми при розробці вебзастосунків і подальшої підтримки. Крім того, можливість користувача налаштовувати багато параметрів браузера (наприклад, розмір шрифту, кольори, відключення підтримки сценаріїв) може перешкоджати коректній роботі застосунку.

На початку 2000-х років був популярним[джерело?] інший (менш універсальний) підхід з використанням Adobe Flash або Java-аплетів для повної або часткової реалізації призначеного для користувача інтерфейсу. Ці технології надавали програмістові більший контроль над інтерфейсом, і були здатні обходити багато несумісностей у конфігураціях браузерів (хоча несумісність між Java або Flash реалізаціями клієнта спричиняла різні[які?] ускладнення). Станом на 2020 рік Java-аплети та Flash-технологія практично вийшли з ужитку.

Через архітектурну схожість з традиційними клієнт-серверними застосунками, певним чином «товстими» клієнтами, існують суперечки щодо коректності зарахування подібних систем до вебзастосунків; альтернативний термін «Насичений інтернет-застосунок» (англ. Rich Internet Application).

Типи мобільних вебзастосунків ред.

Існує декілька підходів для створення вебзастосунків для мобільних пристроїв:

  • Адаптивний вебдизайн може бути використаний для створення як від звичайного вебсайту, так й для односторінкового застосунку, який зручний у використанні на пристроях з невеликими екранами.
  • Прогресивний вебзастосунок поєднання звичайних вебсторінок із мобільним застосунком.
  • Мобільний застосунок або «рідний застосунок» запускається на виконання безпосередньо на мобільному пристрою без веббраузера й зазвичай не потребують наявності інтернет з'єднання. Типово пишуться мовою Java для Android-пристроїв або на Objective-C чи Swift для iOS. Останнім часом, такі програмні каркаси, як React Native, Flutter, Xamarin дозволяють розробляти мобільні застосунки відразу для декількох мобільних платформ використовуючи одну мову програмування (як правило, одну із поширеніших, на зразок JavaScript), замість стандартних для мобільних застосунків.
  • Гібридні застосунки вбудовують вебсайт всередину мобільного застосунку. Можуть бути побудовані за допомогою гібридних програмних каркасів (framework) таких як: Apache Cordova, Ionic або Appcelerator Titanium. Цей підхід дозволяє розробникам використовувати сучасні вебтехнології, разом зі збереженням певних переваг саме мобільних застосунків: застосування апаратного прискорення, офлайн операції, доступ до магазину застосунків тощо.

Архітектура вебзастосунків ред.

Вебзастосунок отримує запит від клієнта і виконує обчислення, після цього формує вебсторінку і відправляє її клієнтові мережею з використанням протоколу HTTP. Саме вебзастосунок може бути клієнтом інших служб, наприклад, бази даних або стороннього вебзастосунку, розташованого на іншому сервері. Яскравим прикладом вебзастосунку є система управління вмістом статей Вікіпедії: безліч її учасників можуть брати участь у створенні мережевої енциклопедії, використовуючи для цього браузери своїх операційних систем (Microsoft Windows, GNU/Linux або будь-якої іншої операційної системи) без завантаження додаткових виконуваних модулів для роботи з базою даних статей.

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

Для створення вебзастосунків використовуються різноманітні серверні технології та мови програмування.

Назва Ліцензія Вебсервер
ASP власницька спеціалізований
ASP.NET власницька спеціалізований
Java вільна безліч, зокрема вільних
Groovy вільна практично будь-який
Perl вільна практично будь-який
PHP вільна практично будь-який
Python вільна практично будь-який
Ruby вільна практично будь-який

Клієнтська частина може використовувати:

Література ред.

  • Марко Беллиньясо Разработка 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 (рос.)

Посилання ред.

Ресурси Інтернету ред.