Bonjour à tous,
J'essaye de développer en ce moment une petite appli de simulation à base d'équations. Le principe est assez simple : l'utilisateur renseigne un ensemble de variable multi-dimensionelles dans des JTables, simule et peut voir le résultat sous plusieurs formes : tableaux, graphiques, ...
J'ai déjà bossé sur une première version de cette appli lors de mes études mais je ne suis pas du tout satisfait du résultat que j'avais obtenu.
Je bosse donc à son refactoring de manière à augmenter fortement son évolutivité. Et comme maintenant j'essaye de réflechir avant de coder , je me suis penché sur les différentes architectures que je pourrais mettre en place pour cela.
J'ai d'abord regardé du coté du modèle M2VC et j'ai implémenté un petit proto pour valider le fonctionnement (utilisation du moteur M2VC de tahe ainsi que de Spring). Cela à l'air fonctionner parfaitement et à l'air évolutif.
Cependant en regardant mon code, je suis entrain de me dire que les choix architecturaux agissent très fortement sur le développement du code source. Donc autant ne pas se tromper...
Et si demain je voulais changer d'architecture pour passer par exemple sur rcp (que je connais peu d'ailleurs) ? Il faudra sans doute que je réecrive une grande partie de mon appli...
C'est dans ce contexte là que je me pose des questions sur "la meilleure architecture" a adopté aujourd'hui pour le développement d'une IHM lourde Java sachant que les besoins sont les suivants :
- L'interactivité doit être correct
- Conservation des trois couches Présentation-Métier-DAO (même si dans mon applis, la couche Métier et DAO sont en fait constituer du moteur de simulation)
- Evolutivitées souhaitées grandes (par exemple, si je veux ajouter un composant permettant d'afficher des données sous une nouvelle forme, cela doit être possible facilement)
Faut-il obligatoirement se tourner vers un RCP ? Si oui, lequel (Eclipse, NetBean, Spring rcp,...) ? Une solution M2VC maison est-elle viable ? Existe-t-il d'autres alternatives ?
Merci pour vos retours d'éxperience sur la question
Partager