OpenUI5
OpenUI5 је бесплатан и отворен JavaScript радни оквир који је развио SAP SE за изградњу пословних, реактивних и мултиплатформских веб апликација. Пројекат је отвореног кода под Apache 2.0 лиценцом, уз могућност доприноса заједнице. Језгро OpenUI5 засновано је на JavaScript-у, jQuery-у и LESS-у. Библиотека пружа подршку за MVC архитектуру, повезивање података (data binding), сопствену библиотеку UI елемената и интернационализацију (прилагођавање апликација различитим језицима, форматима датума, бројева и валута).
Историја
[уреди | уреди извор]Тим који је започео пројекат 2009. године, а који је касније довео до настанка OpenUI5, имао је задатак да развије нови кориснички интерфејс (UI) за SAP апликације. Циљеви су укључивали развој радног оквира који је флексибилан, проширив и модеран, као и обезбеђивање доследног изгледа и начина коришћења у оквиру SAP апликација. Поред тога, у то време је главни SAP UI радни оквир био уско повезан са бекенд технологијом, што је представљало ограничавајући фактор за унапређења корисничког интерфејса.
Библиотека је постала отвореног кода у децембру 2013. године, након што је неколико година коришћена у продукционом окружењу у компанији SAP. У октобру 2014. године, тим је почео да прихвата доприносе заједнице путем платформе GitHub.
Комерцијални статус
[уреди | уреди извор]Све компоненте радног оквира OpenUI5 су у потпуности бесплатне и не постоје плаћенe „премијум“ опције.
OpenUI5 се најбоље може описати као свеобухватни алатни пакет који на једном месту нуди све што је потребно за развој веб апликација, уз довољно флексибилности за проширивање. Поред тога, то је једини алат те врсте који пружа пуну функционалност бесплатно. Док други популарни алатни пакети нуде ограничене бесплатне пробне верзије, уз наплату за пуну функционалност, OpenUI5 је доступан као комплетан производ сам по себи — без додатних наплата и без плаћених премијум функција.
— Често постављана питања о OpenUI5
Главне карактеристике
[уреди | уреди извор]- Око 180 UI контрола, груписаних за рад на различитим уређајима (телефони, таблети и десктоп рачунари) - менији, карусели, панели, алатне траке, траке са иконама, распоред елемената (layout), одзивне мреже (responsive grid), раздвајачи (splitter), листе, табеле, дијалози, поруке, искачуће поруке (toast), одзивни поп прозори, календари, избор опсега датума, отпремање датотека, индикатори оцењивања, сегментирана дугмад, клизачи, приказ ознака, бирачи боја, стабла, табеле и табеле са стаблима, и друго.
- Визуелни (WYSIWYG) дизајнер тема, који није отвореног кода.
- MVC архитектура, која раздваја податке (модел), кориснички интерфејс (приказ) и контролну логику (контролер), ради лакшег одржавања и развоја апликација.
- Подршка за различите формате приказа (XML, HTML, JavaScript или JSON).
- Повезивање података (data binding) са OData, JSON или XML моделима.
- Интернационализација (i18n), укључујући подршку за језике који се пишу и читају здесна налево.
- Доследни UX обрасци у свим функционалностима клијентске стране апликације.
Архитектура радног оквира OpenUI5
[уреди | уреди извор]Архитектура радног оквира OpenUI5 заснована је на принципима модуларности и јасног раздвајања одговорности између појединих делова апликације. Овакав приступ омогућава развој сложених веб апликација које су лакше за одржавање, проширивање и тестирање. Свака функционална целина апликације може се развијати и мењати независно од осталих делова.
Централни архитектонски образац који OpenUI5 користи јесте MVC (Model–View–Controller). Модел представља слој задужен за управљање подацима и комуникацију са изворима података, као што су серверски сервиси или базе података. OpenUI5 подржава више типова модела, укључујући OData, JSON и XML моделе, што омогућава флексибилну интеграцију са различитим системима и изворима података.
Приказ (View) је одговоран за дефинисање структуре и изгледа корисничког интерфејса. У OpenUI5-у, прикази се могу дефинисати на различите начине, укључујући декларативне формате као што је XML, што доприноси јаснијем и читљивијем опису интерфејса. Овај приступ омогућава раздвајање визуелног слоја од логике апликације и олакшава сарадњу између програмера и дизајнера.
Контролер представља слој који обрађује корисничке интеракције и управља током апликације. Он реагује на догађаје из корисничког интерфејса, иницира измене над моделом и координише ажурирање приказа. Захваљујући оваквој организацији, логика апликације остаје централизована и јасно одвојена од приказа.
Посебно важан аспект архитектуре OpenUI5 представља механизам повезивања података (data binding), који обезбеђује аутоматску синхронизацију између модела и приказа. Промене у подацима се без додатног програмског кода одражавају на кориснички интерфејс, чиме се смањује сложеност апликације и повећава поузданост приказа података.
Лиценца и однос са SAPUI5
[уреди | уреди извор]OpenUI5 представља верзију отвореног кода радног оквира SAPUI5, који развија компанија SAP. Оба радна оквира деле исту архитектуру, основне концепте и велики део изворног кода. Кључна разлика је у томе што је OpenUI5 доступан под отвореном лиценцом, док SAPUI5 обухвата додатне библиотеке и контроле и доступан је у оквиру SAP платформи као што су SAP HANA, SAP Cloud Platform и SAP NetWeaver.
SAPUI5 је намењен пре свега коришћењу у SAP пословним системима и захтева одговарајуће лиценце, док се OpenUI5 може користити независно од SAP платформи, у било којим веб пројектима.
Референце
[уреди | уреди извор]- Шта је OpenUI5
- SAP UI5 Лиценце
- 30 дана UI5
- Често постављена питања
- Дизајнер тема САП
- Разлике и сличности са SAP UI5