Generation of graphical user interface by meta-programming: application to individual based models with Java annotations
Résumé
The introduction of a new reflection Application Programmer's Interface in the last version of the Java development platform enables the production of advanced programs known as metaprograms. This paper describes how new features such as annotations can be used to produce more flexible code. A revised version of the Observer pattern is proposed and simplifies the addition of an observable subject. Annotations are also used to generate automatically a Graphical User Interface at runtime. This programming technique is then applied to an Individual Based Model dealing with freshwater fishes.
L'introduction d'une nouvelle interface de programmation reflexive dans la dernière version de la plate-forme de développement Java permet la production de programmes évolués connus sous le nom de métaprogrammes. Ce papier décrit comment ces nouvelles fonctionnalités comme les annotations, peuvent être utilisées pour produire du code plus flexible. Une nouvelle version du patron de conception "Observer" est proposé et simplifie l'ajout de sujet observable. Les annotations sont aussi utilisées pour produire automatiquement des interfaces graphiques à l'exécution. Cette technique de programmation est ensuite appliquée à un modèle individu-centré de poissons de rivière.