Popis: |
U ovom diplomskog rada analizirani su izazovi višeplatformskog razvoja mobilnih aplikacija za iOS i Android platforme s posebnim osvrtom na tehnologiju React Native. Opisani su načini pretvorbe programskog koda, mikrousluge, rad s korisničkim računima, korištenje socketa i lokalno skladištenje podataka pri nedostatku mreže. U praktičnom dijelu rada izrađena je višeplatformska mobilna aplikacija za pretragu i prijavu na događaje uz zahtjev za sinkronizacijom u stvarnom vremenu Ticketnator. Aplikacija je ostvarena korištenjem programskog okvira React Native i razvojnog okruženja Visual Studio Code. Za potrebe sustava na strani poslužitelja koristi se platforma Firebase kao baza podataka, sustav za autentikaciju i korištenje aplikacije u nedostatku internetske veze. Za lokalno skladištenje podataka koristi se spremnik stanja Redux. Ispitivanjem aplikacije pokazano je da aplikacija zadovoljava sve funkcionalne i nefunkcionalne zahtjeve s naglaskom na sinkronizacijske i vremenske zahtjeve te uspješno upravljanje događajima. Aplikacija Ticketnator može konkurirati trenutno dostupnim aplikacijama za pretragu i prijavu na događaje. The master thesis analysis the challenges of cross-platform development of mobile applications for iOS and Android platforms with special reference to React Native technology. Methods of program code conversion, microservices, working with user accounts, using sockets, and local data storage in the absence of a network are described. In the practical part of the paper, the cross-platform mobile application for searching and event registration with a request for real-time synchronization called Ticketnator was accomplished. The application was created using the React Native application framework and the Visual Studio Code source-code editor. For the needs of the server-side system, the Firebase platform is used as a database, authentication, and accessing data offline. A Redux state container is used for local data storage. Testing the application has shown that the application meets all functional and non-functional requirements with an emphasis on synchronization, time requirements, and successful event handling. The Ticketnator application can compete with currently available applications for searching and event registration. |