Xing is a dynamic framework to develop applications based on libraries
such as swing and others. It offers an interface to let the programmer
easily manage MVC pattern, logs, internationalisation, preferences, etc.
Xing allows the developer to focus on functionalities of his applications.
It presents a new developing model freely extendible and not coupled
to a specific implementation. Actually Xing is made of several abstract
classes that define programmer interface.
- Here follow some:
ApplicationManager - manages the applications life cycle. Furthermore it's a contentes source.
ViewManager - manages applications views (frame, dialog, etc.) that could be define using different standards (xing, xul, intellij form, etc..)
MediatorManagr - manages the "controller" part of the MVC pattern, using the Mediator pattern to manage interactions between view and model
PreferenceManager - manages applications preferences that can be provided via xml file, windows registry, ldap, etc
- LoggerManager - manages applications logs
All managers implement the singleton pattern, using the static method "getInstance"
to return its own instance. Each manager take its reference instance via the
ApplicationManager to which it has been registred during startup phase.
This will allow to change managers implementations.
System propriety "xing.application.class" defines the class of the object
that represents the ApplicationManager that will be instance in method
"getInstance" of the same manager
The default implementation allow user interfaces to be defined using XML in a
personilezed and extensible manner using scripting features. It includes automatic
internationalized resource management, data-form binding, resources monitor,
sound management, etc. The application can use, transparently, resouces located
on local filesystems, on webservers, or other locations. Furthermore,
the possibility to reload used resources, provide an easy way to see changes made.