Skip to content

Naming Conventions

Otis Mohr edited this page Jul 11, 2024 · 3 revisions

Entities

Transactions

Transactions are single user-created entries that store data about a transaction a user made. Every transaction stores a monetary value. This can be expenses or income. Transactions can be given a category.

Serial Transactions

Serial Transactions (or contracts) are templates for repeated Transactions. Transactions will be generated for the respective dates the repeat function provides. As template for transactions they can store similar data, like categories or notes.

Structural

Providers

Providers (from the provider package) provide certain services, viewmodels and other classes to the rest of the application. A service is not a provider. A service can be provided by a provider.

Services

Services bundle internal application functionalities - for example creating a user account or authenticating a user. They provider an API for deeper, hidden layers of the application They do not directly interact with the UI!

Repositories

Repositories are responsible for everything that has to do with data. Creating, Updating, Deleting, Finding, etc. They also bundle database, cache and webapi calls behind one API

View Models

View Models store the state of a view and provide functionalities that can be used directly from the UI. They can interact directly with the UI.

Helpers & Widgets

actionDialog

A full-screen info message popup demanding a user choice (i.e., containing a choice tree) or otherwise interacting with the user (e.g. "Are you sure you want to do that? --> Yes | No | Abort"). The actionDialog can hold as many actions as needed and, by default, blocks any further interaction with the underlying screen, demanding the user's attention

alertDialog

A full-screen warning/info message popup without a choice tree (e.g. "Sorry, can't log you in. --> OK"). The alertDialog blocks, by default, any further interaction with the underlying screen, grabbing the user's attention immediately.