Skip to content

7. Tehnologije za implementaciju aplikacije

Eugen Kozomara edited this page Jan 22, 2025 · 4 revisions

Korištene tehnologije i alati

U razvoju projekta koristili smo niz tehnologija i alata koji su omogućili kvalitetnu realizaciju aplikacije i osigurali njezinu funkcionalnost. U nastavku donosimo detaljan pregled korištenih tehnologija, s obrazloženjem njihovog odabira:

Programski jezici i radni okviri

Backend:

Backend aplikacije razvijen je korištenjem programskog jezika Java u kombinaciji s Spring Boot frameworkom. Spring Boot (verzija 3.3.5) odabran je zbog svoje jednostavnosti u postavljanju, robusnih mogućnosti za upravljanje zahtjevima te ugrađene podrške za RESTful API-je, što je bilo ključno za naš projekt.

Kao razvojna okruženja (IDE) koristili smo Eclipse i JetBrains IntelliJ IDEA, oba poznata po svojoj integraciji s Java ekosustavom te alatima za otklanjanje pogrešaka i upravljanje projektima.

Frontend:

Za razvoj korisničkog sučelja koristili smo React Typescript. React (verzija 18) odabran je zbog svoje sposobnosti upravljanja stanjem aplikacije i modularnog razvoja putem komponenti, što olakšava održavanje i proširenje. TypeScript je dodan za statičko tipiziranje, čime je smanjen rizik od grešaka prilikom razvoja. Kao razvojno okruženje koristili smo Microsoft Visual Studio Code (VS Code), zbog njegove fleksibilnosti, podrške za proširenja i jednostavnog sučelja.

Baza podataka

Za pohranu podataka koristili smo PostgreSQL bazu podataka (verzija 13). PostgreSQL je odabran zbog svoje snage u radu s relacijskim podacima, sigurnosti i skalabilnosti, što ga čini idealnim za projekte s višekorisničkim pristupom i velikim brojem unosa podataka.

Alati za ispitivanje

Za automatizirano testiranje aplikacije koristili smo Selenium (verzija 3.17.2). Selenium omogućuje testiranje korisničkog sučelja simulirajući stvarne interakcije korisnika, čime smo osigurali funkcionalnost aplikacije na različitim platformama i uređajima.

Alati za razmještaj i hostanje

Aplikacija je hostana na Renderu, besplatnoj platformi za implementaciju. Render smo odabrali zbog njegove jednostavnosti, mogućnosti besplatnog hostanja i podrške za automatsko ažuriranje aplikacije putem povezanog Git repozitorija. Ova platforma omogućila nam je brzo postavljanje aplikacije u pogon i njenu dostupnost korisnicima.

Integracija video prijenosa

Za uspostavu veze s IP kamerom i omogućavanje pregleda livestream prijenosa koristili smo MUX Video Encoder. Mux smo odabrali zbog njegove pouzdanosti u prijenosu video sadržaja i jednostavne integracije s frontend aplikacijom. Ova tehnologija omogućila je prijenos video zapisa u stvarnom vremenu, što je ključno za funkcionalnost naše aplikacije.

Zaključak

Odabir ovih tehnologija i alata temeljio se na njihovoj pouzdanosti, fleksibilnosti i kompatibilnosti s potrebama projekta. Korištenje modernih tehnologija poput Reacta, Spring Boota i PostgreSQL-a osiguralo je skalabilnost i stabilnost sustava, dok su alati poput Rendera i Muxa omogućili jednostavnu implementaciju i dodatne funkcionalnosti. Ova kombinacija tehnologija pružila je snažnu osnovu za daljnji razvoj i unaprjeđenje aplikacije.

Clone this wiki locally