Architectural OverviewΒΆ
Figure Overview of the architecture shows the high level software architecture for an application based on PyGTK and the supplied MVC-O Infrastructure. It shows the functional architecture as well.
In terms of functionalities, at the highest level is located the Application Layer, which is partially based on the MVC-O Infrastructure, and whose implementation depends on the application semantics. The impact of the framework is intended to be as much little as possible.
The MVC-O Services Layer supplies a quasi-generic platform
which implements the MVC pattern and the Observer pattern. As the figure Overview of the architecture
depicts, the MVC-O layer is partially based on PyGTK in order to
provide supports for the view and controller parts. Furthermore, model
part may access PyGTK when using the MVC pattern provided by PyGTK itself,
like for example TextBuffer
or TreeModel
objects. However in general the model part is indenpended on the
specific graphical toolkit.
Lower layers supply several functionalities concerning the graphical toolkit (GTK and Glade), Object Relational Mapping (ORM) libraries, the Scripting Environment (namely Python), and other possible libraries providing application-specific features.