Miguel Orozco

Giphierto Android App

10 May 2021

alt_text

Architecture and Key Libraries

The app is built using a modern and robust architecture called MVVM (Model-View-ViewModel). This architectural pattern helps keep the codebase organized, maintainable, and testable by separating the application’s logic into three interconnected components:

MVVM

  • Model: Represents the data and business logic (e.g., Model).
  • View: The user interface (e.g., TrendingFragment).
  • ViewModel: Acts as a bridge between the Model and the View, providing data to the View and handling user input

Android libraries:

  • Retrofit: This library is a type-safe HTTP client for Android and Java. It’s likely used in GiPHERTO to make network requests to a server, perhaps to fetch gift listings, user data, or to upload information when a user shares a gift.

  • RxJava: A reactive programming library for the JVM. RxJava helps handle asynchronous operations and event-based programs more easily. In GiPHERTO, this could be used for managing background tasks like network calls, database operations, or handling user interactions in a more responsive way.

  • Glide: A fast and efficient open-source media management and image loading framework for Android. GiPHERTO probably uses Glide to display images of gifts smoothly and efficiently, minimizing memory usage and improving the user experience.