Application Entities
Overview
In the application there are the following classifications of scripts (also referred to as Modules, not to be confused with a portlet type module that a user can interact with).
- Bootstrap - there's only one bootstrap module, app.js, which Titanium executes to load the rest of the app.
- Static modules, modules that maintain static configuration information or data dictionaries
- MVC Modules - Models, views and controllers that work together to provide the user experience.
Controllers
Controllers are associated 1:1 with a User Module, except for the Portlet Window Controller which handles all WebView-based content. Controllers get data from models, then provide it to views in order to render content for the user.
Models
Models abstract data and properties of the application so controllers can focus on rendering pages and responding to user interaction, and not worry about maintaining information outside of that scope.
Views
There are two types of views in uMobiles:
- Those that are concerned with rendering User Modules
- Some views (under UI) that are treated as factories to create commonly-used UI components
Views concerned with rendering User Modules maintain relationships, positions and states of all UI elements used in a particular module.
All Entities
Illustrated below is the general relationship between most of the entities in the uMobile application. UI Views, and other frequent modules are not included below.