Skip to content

Study Journal 06-10-2023

Published: at 12:00 AM

What I learnt

DESIGN EVOLUTION - Apple sucks because it costs £££. Google ain’t much better but doesn’t cost as much £££.

Basically - time to just focus on Android development is the shorthand version.

Get Android done, and then we can figure out a solution to the iOS problem.

Probably going to cost £1,000-1,600 depending on the solution 🙄

And Google needs to be more consistent… having to switch between like 3 unharmonised documentation sets is definitely annoying 🙄

REVISED DESIGN ARCHITECTURE: Thanks Jetpack! You just threw everything upside-down!

Anyway here’s a revised idea on how we can design the layers without too much difference in it’s implementation.

Presentation Layer:

Abstraction between Presentation and Logic:

Logic Layer:

Abstraction between Logic and Data:

Data Access Layer:

Abstraction between Data Access and Database:

Database:

Additional Libraries and Components:

General Steps: We’re now working front to back instead of back to front:

  1. Design your UI with Jetpack Compose: Start with mockups, then implement using Composable functions.
  2. Define UI-Logic Abstractions: Determine the actions/events the UI can trigger and define interfaces for them.
  3. Implement Logic in ViewModels: Use the **ViewModel** class from the Android Architecture Components.
  4. Define Data Abstractions: Determine what data operations are needed and define interfaces for them.
  5. Implement Data Access with Repositories: Use the Repository pattern and integrate with Room, Retrofit, or other data sources.
  6. Set up your Database with Room: For local storage, and integrate Firebase SDK or other preferred solutions for cloud storage.

HEADACHE AREA: Use let Android Studio handle a lot of the navigation - etc. You’ll want to kill yourself otherwise.

Seriously. Just use the integrated solutions as much as possible.

Consider supporting this blog