Loading...

Какво е "Single-page application"?

avatar Георги Кацаров 1 минута
Какво е "Single-page application"?

Single-page application (SPA) e уеб приложение за уебсайт, които взаимодейства с потребителя чрез динамично пренаписване на текущата страница, вместо да зарежда изцяло нова страница от сървъра. Чрез този подход се избягва прекъсването на потребителското преживяване между две свързани страници, като позволява на уебприложението да се държи повече като десктоп приложение.

Този трик single-page application-ите постигат по два начина: или целият необходим код - HTML, JavaScript и CSS - се зарежда при зареждането на самата страница, или необходимите ресурси се зареждат динамично и се добавят към страницата ако е необходимо, обикновено в отговор на потребителските действия. Самата страница не се презарежда или сменя в нито един момент от целия процес, нито контрола се прехвърля към друга страница, въпреки че location hash-a може да се използва за да създаде усещането и управляемостта на няколко логически страници в приложението. Интеракцията със single-page application често включва и диманична комуникация със уеб сървъра.

Произхода на термина "single-page application" е неясен, въпреки, че концепцията е била дискутиратана още през 2003 г. Идеята е била реализирана напрактика година по-рано, когато студент по програмиране от Уелс - Сюарт Морис - създава самоподдържащ се уебсайт, който има същите цели и функции. По-късно същата година няколко души - Лукас Бърдоу, Кевин Хекман, Майкъл Пийчи и Клифърд Йех описват какво е single-page application в щатския патент №8 136 109.

Какво е необходимо за да се създаде SPA?

Съществуват множество подходи и технологични решения с JavaScript, които да се приложат, за да се създаде single-page application. Един от тях е употребата на подходящ framework. Тук отново имаме множество варианти, като един от тях е употребата на фреймуърка VueJS. Той е сравнително нова технология и е сред най-популярните решения за създаване на SPA в момента. Фреймуъркът е базиран на софтуерния архитектурен шаблон model-view-viewmodel. Този шаблон улеснява разделянето на разработката на графичният потребителски интерфейс (GUI) - било то чрез markup език или чрез GUI код - от разработката на бизнес логиката или бекенд логиката.

Ако искате да усвоите уменията необходими за създаването на пълноценни single-page application-и и вече владеете на едно по-добро ниво програмирането с JavaScript, работа с REST API-та, асинхронно програмиране, работа с DOM и HTML/CSS - не губете време, а се запишете за нашия курс "VueJS - март 2020". Очакваме ви!