-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReading the code.txt
23 lines (14 loc) · 982 Bytes
/
Reading the code.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
If you are new to this project, it uses an architecture called ALA (abstractionlayeredarchitecture.com)
Section 2.15 at this website has the background information about this calculator and its design.
ALA uses four subfolders/namespaces which are four layers called:
Application
DomainAbstractions
ProgrammingParadigms
Library
Dependencies only go down these layers.
The entire application is written in the Application layer. It consists of Application.cs and CalculatorRow.cs, but these are mostly generated code from two diagrams of the same names respectively.
In the Application diagram, start reading the code at the mainWindow.
These diagrams instantiate abstractions in the DomainAbstractions layer, and then wires them together.
The wiring of these instances is achieved using interfaces that are in the ProgrammingParadigms layer.
There are programming paradigms for Events, DataFlow, and UI.
The wiring engine (WireTo extension method) is in the Library layer.