Skip to content

Chosen Technologies

Mihály Dobos-Kovács edited this page Oct 18, 2020 · 1 revision

This document describes the technologies we chose for this homework.

Overall structure

The overall structure of the CAFF store is the following:

  • Server
    • Capable of storing data
    • Capable of serving requests
    • Capable of processing CAFFs via a native component
    • Communicates with the clients via the internet
  • Client
    • Capable of displaying the data from the server
    • Capable of modifying the data on the server

Native component

The task of the native component is to parse CAFFs in an efficient way. To achieve this goal, the native component will be implemented in C.

Server side

The databases will be implemented via a MySQL server. This technology was chosen for its robustness and enterprise grade security features.

The server side will be implemented in Java using the Spring Boot Framework, which can be used to develop web servers that scale,

The layer between the database server and the server side application will be implemented in Hibernate, which is a widely used ORM in the Java ecosystem, and integrates with both MySQL and Spring Boot.

Finally, the server side application will communicate with the native component using the JNI.

Client side

The client side application will be implemented as an Android, using Java and Kotlin.

Clone this wiki locally