Vidíte historickú verziu tejto stránky. Pozrite si aktuálnu verziu.

Porovnať s aktuálnou verziou Zobraziť históriu stránky

« Predchádzajúce Verzia 24 Ďalej »

Hlavným podnetom na vytvorenie systému D2000 Smart Web bola otázka ako umožniť realizáciu web aplikácií nad D2000 efektívne a jednoducho s minimálnymi požiadavkami na aplikačných programátorov. Táto požiadavka bola v spoločnosti stále prítomná a nie je možne ju ignorovať ani teraz. Celosvetový trend vedie k zjednodušovaniu dostupnosti aplikácii a služieb pre koncového používateľa, z tohto hľadiska predstavuje webový ekosystém a prehliadač ideálne prostredie pre dostupnosť aplikácii pre používateľov.



Požiadavky na špecifické vlastnosti integrácie webových aplikácii do D2000 sa kryštalizovali postupne počas viacerých rokov. Smart Web platforma je výsledok niekoľkoročného iteratívneho výskumu a realizácie týchto požiadaviek. Medzi kľúčové vlastnosti požadovaného systému teda zaraďujeme:

  • podpora ekonomického vývoja a údržby aplikácií
  • realizácia spoločných funkcií web aplikácii, ako napr. prístup k dátam a službám D2000, autentifikácia, atď.
  • možnosť implementácie aj vlastnej business logiky na strane web aplikácie a jej rôzne úrovne "customizácie"
  • technologická vyspelosť so smerovaním do budúcnosti

Vlastnosti Smart Web Platformy

Smart Web realizuje tieto požiadavky s nasledujúcimi vlastnosťami.

Univerzálnosť využitia Smart Webu ako rozhrania do D2000

Niektoré funkcie poskytované Smart Web platformy presahujú využitie len pri webových aplikáciách. Príkladom je univerzálne API, ktoré sprístupňuje dáta (aktuálne hodnoty, archív) a služby (RPC) D2000 systému nezávisle na technológií klienta. To znamená že nad D2000 je s pomocou Smart Webu možné implementovať aj natívne mobilné, desktopové aplikácie alebo integrovať D2000 s ľubovolným backendovým riešením schopným cez univerzálne API komunikovať.

Smart Web - KonceptJednoduchosť vývoja web aplikácií

Koncepcia vývoja web aplikácií na Smart Web platforme je postavená na čo najnižších požiadavkách na aplikačného programátora webovej aplikácie. Vývoj prebieha na úrovni webových technológii HTML,CSS a Javascript, t.j. iba na úrovni frontendových programátorov. Spôsob akým bude táto aplikácia naprogramovaná je na možnostiach  a schopnostiach konkrétných programátorov. Smart Web v tomto podáva pomocnú ruku aplikačným programátorom viacerými spôsobmi. Nielen že poskytuje špeciálnu podporu pre vývoj webových aplikácií, ale sprístupňuje aj voliteľnú javascriptovú knižnicu Smart Web Framework, ktorá uľahčuje implementáciu aplikácie výberom vhodných webových technológii a knižníc.

S pomocou Smart Web Frameworku môže byť aplikácia naprogramovaná ako súbor samostatných stránok, ktoré si medzi sebou predávajú hodnoty cez URL. Každá stránka je definovaná samostatným javascriptovým súborom v ktorom sa definuje výzor a dodatočná logika stránky. Definovanie vizuálu stránky sa zapisuje priamo v javascriptovom súbore vo formáte JSX - na 99% podobnom HTML. Preto modifikáciu výzoru stránky zvládne aj človek s minimálnymi znalosťami o HTML a CSS. Na komplexnú UI logiku stránky je síce nevyhnutné poznať Javascript, no nie sú  potrebné žiadne server side technológie.

Požiadavky na aplikačných programátorov

Vzhľadom na úroveň schopností programátora je teda možné:

  1. Implementovať jednoduché web stránky/dashboardy len s použitím znalostí HTML/CSS a UI komponentov poskytovaných Smart Web Frameworkom.
  2. Implementovať komplexné web stránky s logikou a vlastnými UI komponentami. Oproti 1. je potrebné aj mať znalosť Javascriptu a použitých knižníc.
  3. Doplniť ďalšie funkcionality do Smart Web Platformy ako takej. Tu sa vyžaduje znalosť Java a použítých knižníc(Java/Java EE). Funkcionality platformy je primárne v zodpovednosti D2000 oddelenia v spol. Ipesoft a nepredpokladá sa, že by bolo potrebné realizovať zásah aj zo strany web programátora. V každom prípade je tu možnosť implementovať aj vlastné server side rozšírenia Smart Web platformy špecifické pre konkrétneho zákazníka.

Flexibilita

Smart Web Platforma umožňuje implementovať akékoľvek typy web aplikácii, napríklad:

  • dashboardy (live hodnoty, grafy, tabuľky na čítanie),
  • formuláre a tabuľky na prezeranie, editáciu, mazanie,
  • custom web aplikácie s business logikou podľa aktuálnych požiadaviek zákazníkov (napr. schvaľovací proces alebo iny workflow, chat, zdieľanie dokumentov, atď.)

Web aplikáciu postavenú na SWP je možné customizovať nasledovne:

  • zmena štýlu/témy, fontov, obrázkov aplikácie
  • dedenie/kompozícia UI komponentov poskytnutých platformou
  • vytváranie nových UI komponentov, špecifických pre aplikáciu
  • automatický import javascriptových knížníc z verejného repozitára a ich použitie pre špecifické potreby aplikácie
  • získavanie dát z volania akýchkoľvek RPC metód a objektov D2000 systému

Efektivita

Zmenu kódu aplikácie je možné realizovať bez reštartu servera. Zmenu je možne vidieť okamžite po znovunačítaní stránky v DEV(eloper) móde. Produkčná verzia stránok sa mení iba pri explicitnom rebundlovaní aplikácie, vyvolanom povoleným používateľom. SWP teda umožnuje v prípade potreby pohodlným spôsobom ladiť a ad-hoc meniť aplikácie priamo u zákazníka v produkcii.

SWP zároveň implementuje spoločné funkcionality nasledovných typov:

  • server side - autentifikácia, komunikácia, konekcia na D2000, ...
  • client side - znovupoužiteľné komponenty a Javascriptové knižnice 3-tích strán

Technologická vyspelosť a robusnosť

Implementácia aplikácie postavenej na Smart Web platforme je v aktuálnych web technológiach, ktoré sú príťažlivé aj pre ľudí z vonku. Použité knižnice sú odladené a projektoch s množstvom používateľov (napr. pre server–push technológiu je použitá knižnica odladená na projektoch s 150 000 používateľmi) a ktoré sú mainstream (napr. komponentový UI framework použitý v knižnici Smart Web Framework sa volá React JS a používajú ho napr. aj spoločnosti Facebook, Instagram, Yahoo, Netflix, Twitter, ...). Aplikáciu je možné implementovať aj v najnovšej verzii javascriptu - ES 2017, ktorý bude onedlho štandardom vo všetkých prehliadačoch.

Web je softvérová platforma s celosvetovo obrovskými investíciami. Jednou z najväčších výhod Smart Webu je aj fakt, že vývíjaná web aplikáciá je spúšťaná priamo v prehliadači. API rozhrania prehliadača (aktuálne aj budúce) môže programátor využiť bez akejkoľvek asistencie zo strany Smart Web platformy. Môžeme teda povedať, že vývoj na tejto platforme je možný aj z pohľadu budúcnosti. Uveďme si príklady niekoľkých zaujímavých technológii, ktoré sa už teraz dajú priamo z prehliadača využiť:

  • 2D/3D vizualizácie - (SVG/HTML 5 Canvas/WebGL API)
  • offline aplikácie emulujúce mobilné aplikácie (Camera/GPS/.../Offline API)
  • virtuálna realita  (WebVR API)
  • syntetizácia a rozpoznanie hlasu (Web Speech API)
  • rozpoznávanie textu (Tesseract OCR)
  • umelá inteligencia s hardwarovou podporou (Deeplearn.JS)
  • Žiadne štítky