Prerequisites

Design Goals

reuse, extensibility, flexibility, team development, quality

Key Concepts

Module

Lifetime

  1. Registering via code or XMAL.
  2. Discovering in a folder, configuration or downloaded assemblies.
  3. Loading from disk
  4. Initializing: register types with container, show UI and so on.

Communicate Between Modules

MVVM

Model

View

View Model

Class Interactions

Construction and Wire-Up

Other

Compositing the User Interface

Regions

View Composition

UI Layout