Programiranje

Programiranje

Tehnologija i alati

U razvoju web aplikacija koristimo PHP, Javascript (SPA, MVC, AJAX) i MySQL, dok u razvoju desktop aplikacija koje također mogu biti i dio online sustava koristimo C++ i C# (npr. web serveri posebne namjene, media serveri za live video streaming, aplikacije za prikupljanje podataka i sl).

 

Cloud computing

Razvijamo online sustave koji rade u “oblaku” (cloud computing). Centralizirani podaci, kontroliran korisnički pristup sa bilo kojeg računala ili mobilnog telefona u svijetu bez potrebe instalacije bilo kakvih dodataka te prikupljanje podataka sa raznih lokacija samo su neke od mogućnosti takvog sustava.

 

Komunikacija

Većina naših web aplikacija su SPA (eng. Single Page Application), što naravno ne znači da se sastoje od samo jedne stranice nego se radi o relativno novoj tehnologiji koja omogućava da se stranica aplikacije učitava samo jednom, a svi ostali resursi i podaci pozivaju se sa servera pomoću AJAX-a (dinamičke asinkrone komunikacije sa serverom), te ih server vraća u JSON formatu. Tako se pomoću MVC (eng. Model-View-Controller) arihtekture omogućuje da korisničko sučelje bude vrlo brzo obnovljeno bez ponovnog učitavanja cijele stranice. Ukoliko je potrebno da korisnik web aplikacije razmjenjuje podatke sa drugim korisnicima ili serverima na određenim lokacijama u realnom vremenu (real-time) u tom slučaju koristimo i Comet ili Ajax Push tehniku (na PHP platformi) tako da postoji stalna konekcija i trenutno izvještavanje tj. razmjena podataka sa tih lokacija.

 

Primjena

Primjena takvih sustava može biti npr. alarm, detekcija pokreta sa video nadzornih kamera na nekoj udaljenoj lokaciji, pregled stanja raznih uređaja, prikupljanje raznih podataka kao što su temperatura, tlak i brzina u nekom proizvodnom procesu ili bilo kakvih podataka gdje je potrebna vrlo brza obnova prema korisnikovom pregledniku, bez obzira koliko je korisnika prijavljeno u sustav. Za zaštitu podataka koristimo SSL te enkripciju sa AES256, SHA256 i CAST128 algoritmima. Također ako se radi o sustavima za nadzor, može se bilježiti svaki pristup stranicama, aktivnosti korisnika sustava spremati u logove za kasniju obradu u slučaju nelegalnih ili neovlaštenih radnji. Prikazivanje 3D sadržaja na stranici također može biti dio sustava jer može biti povezano sa svim navedenim (interaktivni 3D floorplan i sl.).

 

Integracija sa CMS-om 

CMS na kojem gradimo većinu web aplikacija je Joomla CMS s ugrađenim frameworkom koji smo izradili za potrebe navedenih i sličnih sustava, a koji se može prilagoditi i drugim CMS-ovima. Primjer rada i primjenu našeg frameworka u sustavu jednog online video nadzornog centra možete vidjeti na sljedećim slikama. Podaci i slike lokacija zamućeni su radi sigurnosti i privatnosti korisnika.