[PaPO]Travaille d'architecte

Publié le par Blackwings

Hello hello!

Alors voici quelques news sur PaPO.  Déjà il faut savoir que j'ai beaucoup bossé dessus, mais pas sur les fonctionnalités. En fait, j'ai suivi une formation sur le framework Hibernate en Java dont le but est de rendre plus facile la gestion de persistance des données.  Je me suis donc attelé l'implémenter dans PaPO afin de respecter une architecture dont les couches restent indépendante.

C'est chose faite, ou presque. En effet, même si je suis parvenu à faire fonctionner ensemble les 3 couches MVC (Tapestry 5), IoC (Tapestry 5) et DAO (Hibernate) il me reste encore à trouver une architecture entre les WebServices (Axis2) et la couche IoC. 
En effet, le but de la couche IoC est de permettre aux autres couches de ne pas avoir a y faire référence directement. C'est l'IoC qui est chargé de fournir les  instances d'objets sous forme de service aux autres couches.
Par exemple, si mon MVC a besoin de vérifier si un utilisateur est connu avec son login et son password, il va faire appel à un service mais du point de vue du MVC, il n'a aucune idée de qui il est et d'où il se trouve. C'est à la couche IoC de lui fournir ce service (setLeService).  La couche IoC va donc aller créer une instance du DAO adequat et le donner de lui-même au MVC qui pourra alors l'utiliser.

Ce mécanisme est pratique mais pas évident à implémenter lorsqu'on débute dans ce genre d'architecture comme moi. Donc ce mécanisme fonctionne mais par pour les Webservices. Je suis en effet occupé a trouver comment dire à l'IoC de fournir les intances des services sans que le webservice soit mis au courant de l'existence de l'IoC. Et oui, c'est le serveur qui dit à l'IoC que tel objet à besoin de tel instance (Filter) mais je n'ai pas encore réussi à metre en oeuvre ce principe  pour les Webservices.

Cà ne devrait plus tarder car je devrais trouver un peu de temps pour m'y mettre vu que je suis en vacance!

Une fois que ce sera fait, je pourrais alors retourner aux développements des fonctionnalités de l'application client et commencer a intégrer des principes tel que les parties de JDR, les groupes, les scénarios, donc toute la partie préparation d'une partie.

Suivront alors la gestion des personnages et donc des jeux..; peut-être en fait que je vais les faire avant la gestion des parties, à voir. Bref, beaucoup de boulot et beaucoup de fondation à creuser.

Voilà!

Publié dans Projets

Commenter cet article