This project provides a set of modules which can help making GUI applications
in Vala (using of Objectum-Oriented design[1]) more testable, understandable and
more easily.
Using these modules and applying some Architectural Pattern[2] used in Software
Engineering like "MVVM/Presentation Model"[3][4] helps to separate the
Graphical User Interface (GUI code) from the Business logic (Application or
Domain model). This separation of roles allows the Designers to focus on UX and
Design.
Modules:
* Core (dafcore): Core module of the DaF and it implements some
part of the Visual Works Smalltalk Application Framework's Value Model
and an own Data Binding solution.
* Data Validation (dafvalidation): Data Validation module
* Animation (dafui): Simple Animation service for Gtk+3 based Widgets until
Gtk+4 and Clutter 2.0 arrives. It's similar to Clutter funcs but in 2D,
and includes property animation, timeline, keyframes. Also, it includes
some components which extends functionality of Widgets (such add
opacity/
the notebook widget just much simpler).
* IoC (dafioc): It implement's IoC's Dependency Injection (Constructor Injection).
* Unit Tests (dafunit): It's completely uses Valadate classes integrated to
DaF.
References:
[1] Objectum-Oriented Design: http://
[2] Common Layers, http://
[3] Presentation Model: http://
[4] Model View View Model, http://