Table of Contents

Convertor Valutar

Această aplicație Android permite utilizatorilor să converteze sume dintr-o monedă în alta folosind un API valutar. Aplicația utilizează Jetpack Compose pentru interfața grafică și arhitectura MVVM (Model-View-ViewModel) pentru gestionarea datelor și stării.

Funcționalități

Tehnologii utilizate

Persistența datelor cu Room – Istoric Conversii Valutare

Această componentă gestionează salvarea și accesarea istoricului conversiilor valutare utilizând biblioteca Room.

ConversionEntity

Entitatea care reprezintă o conversie valutară în baza de date.

ConversionDao

Interfața DAO pentru accesul la datele conversiilor.

AppDatabase

Clasa abstractă care extinde RoomDatabase și oferă acces la DAO-ul de conversii.

Integrarea Retrofit – Obținerea cursurilor valutare

Această componentă se ocupă de comunicarea cu API-ul extern pentru a prelua cursurile valutare actualizate folosind biblioteca Retrofit.

ExchangeRatesResponse

Modelul de date care reprezintă răspunsul primit de la API:

CurrencyApiService

Interfața care definește endpoint-urile API-ului pentru Retrofit:

RetrofitInstance

Obiect singleton care configurează Retrofit:

ViewModels – Gestionarea logicii UI și a datelor

MainViewModel

Clasa extinde

AndroidViewModel

și se ocupă cu:

Funcții principale

Persistență

SettingsViewModel

Clasa gestionează stările legate de configurarea aplicației (limbă, culoare butoane etc.)

Screens – Interfețele utilizator în Jetpack Compose

MainScreen

SettingsScreen

HistoryScreen