Suivant mon idée de présenter Eclipse Scout à travers un cas concret, je me suis dit que le challenge consisterait à partir d’une base de donnée existante. Premièrement cela me permet d’avoir un cas concret (le besoin est défini, on est pas dans une simple démonstration). Deuxièmement cela limite le périmètre des fonctionnalités. Troisièmement cela permet d’utiliser le framework avec une base qui n’a pas été faite pour lui. Le code source est évidement disponible, publié sous licence Apache.
J’ai retenu la base de données Sakila, proposé par MySql en démonstration des fonctionnalités de MySQL 5. A vrai dire je n’ai pas fait de grosse étude de marché pour faire mon choix. J’ai découvert cette base en m’intéressant à MySQL. Elle est suffisamment complète pour qu’il y ait un intérêt (22 tables, clé primaire et clé externes, vues, trigger, procédures…). La lecture de cette analyse des manques de MySQL, me fait penser que MySQL n’est pas forcément un bon choix pour ce genre d’application, mais cette base existe aussi pour PosgreSQL (pagila) et je privilégie la simplicité d’utiliser un outil que je connais.
Cette base de données sert à gérer l’activité d’un loueur de DVD (gestion d’un catalogue de films, de différents magasins avec leurs équipes et leur clients, ainsi que l’activité au quotidien).
Ce sera donc le projet et l’application SakilApp. L’idée est de pouvoir visualiser et éditer toutes les informations contenues dans la base de données, en suivant la manière du framework. Je souhaiterais illustrer et commenter mes choix, tout en aboutissant à un produit fini.
Mon premier objectif est que toutes les informations de la base de données soient accessibles et éditables dans l’application. Il y a cependant du potentiel pour des développements après cette première version. Par exemple optimiser l’interface graphique pour une utilisation dans une boutique de location de film, ou encore intégrer dans l’application des fonctionnalités de reporting.
Je souhaite également proposer un accès au code source. J’ai donc ouvert un projet sur google code contenant les projets de mon workspace Eclipse. Lorsque le projet sera plus avancé, j’espère également pouvoir mettre à disposition l’application sous sa forme compilée.
Le code est sous licence Apache 2, pour que chacun puisse y avoir accès. Je n’en suis vraiment qu’au début du développement, et ne conserve pas forcément le code correspondant aux articles. Il s’agit surtout pour moi de faire des expériences et des essais, tout en illustrant les articles que je publie.
Disclaimer :
Je travaille pour BSI Business System Integration AG, la société créatrice du framework Eclipse Scout. Les propos tenus ici n’engagent que moi. Cet article a été écris en dehors de mon temps de travail et n’a pas été relu par mon employeur.