Skip to content

(WIP)This repository showcases all different Architecture patterns in Android

Notifications You must be signed in to change notification settings

AkshayAshokCode/Android-Architectures

Repository files navigation

This repository showcases a simple Note-Taking App implemented using the following architectures:

  • Classic UI Patterns:
    • MVVM (Model-View-ViewModel) ⭐
    • MVC (Model-View-Controller) ⭐
    • MVP (Model-View-Presenter) ⭐
    • MVI (Model-View-Intent) ⭐
  • Layered Architectures:
    • Clean Architecture + MVVM ⭐
    • Hexagonal Architecture (Ports and Adapters) ⏳
    • Layered Architecture ⏳
  • Specialized Architectures:
    • FLUX Architecture ⏳
    • VIPER (View, Interactor, Presenter, Entity, Router) ⏳
    • Event-Driven Architecture ⏳
    • CQRS (Command Query Responsibility Segregation) ⏳
    • Microkernel Architecture ⏳
    • Redux Architecture ⏳
  • Component-Based Architectures:
    • Component-Based Architecture ⏳

Each architecture is implemented in its own package, providing a clear and isolated example of how the architecture can be applied to a simple Android app.

Each architecture has its strengths and trade-offs, depending on project requirements, team expertise, and application complexity. Understanding these differences helps in selecting the most suitable architecture for your specific needs, ensuring robust and maintainable Android applications.