Author: athimel Date: 2014-05-14 18:17:06 +0200 (Wed, 14 May 2014) New Revision: 3105 Url: http://forge.nuiton.org/projects/topia/repository/revisions/3105 Log: Improve index page of mavensite Added: trunk/src/site/resources/employee.png trunk/src/site/resources/employee.zargo trunk/src/site/resources/employeeAndCompany.png trunk/src/site/resources/info.png Modified: trunk/src/site/rst/index.rst Added: trunk/src/site/resources/employee.png =================================================================== (Binary files differ) Property changes on: trunk/src/site/resources/employee.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: svn:keywords + Author Date Id Revision HeadURL Added: trunk/src/site/resources/employee.zargo =================================================================== (Binary files differ) Property changes on: trunk/src/site/resources/employee.zargo ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: svn:keywords + Author Date Id Revision HeadURL Added: trunk/src/site/resources/employeeAndCompany.png =================================================================== (Binary files differ) Property changes on: trunk/src/site/resources/employeeAndCompany.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: svn:keywords + Author Date Id Revision HeadURL Added: trunk/src/site/resources/info.png =================================================================== (Binary files differ) Property changes on: trunk/src/site/resources/info.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: svn:keywords + Author Date Id Revision HeadURL Modified: trunk/src/site/rst/index.rst =================================================================== --- trunk/src/site/rst/index.rst 2014-05-14 16:12:08 UTC (rev 3104) +++ trunk/src/site/rst/index.rst 2014-05-14 16:17:06 UTC (rev 3105) @@ -22,22 +22,75 @@ .. * #L% .. - -======= -Accueil -======= +======================================================= +Tools for Portable and Independent Architecture (ToPIA) +======================================================= -.. contents:: +ToPIA est un framework d'abstraction des plateformes techniques. À l'heure actuelle ToPIA se focalise sur la persistence +des données. -Présentation ------------- +Concrètement, lorsque vous utilisez ToPIA, vous définissez dans un premier temps votre modèle UML, puis vous codez votre +code métier sans vous soucier de la persistence. C'est ToPIA qui va s'occuper de ce qui se passe entre ces 2 étapes. -ToPIA, pour Tools for Portable and Independant Architecture, est un framework -d'abstraction des plateformes techniques. -|RECOMMENDED| +Comment ça marche ? +=================== -ToPIA est en cours de refonte (version 3.0). Pour plus d'informations, `suivez le guide de migration`_. +Avant tout, le développeur doit créer un modèle UML qui représente vos objets métier. +Ici, nous avons un modèle très simple dans lequel un employé est caractérisé par son nom, son genre et sa ville de +résidence. Une société est constituée d'un nom, d'un SIRET et d'une liste d'employés. + +|DIAGRAMME| + +En amont de la compilation, ToPIA va générer les fichiers nécessaires à son bon fonctionnement. Ces fichiers générés +ajoutés au code que vous avez écrit constituent les sources de l'application. Cela signifie que vous bénéficiez de +toute la robustesse d'une compilation Java, alliée à une sérieuse économie de lignes de code. Lorsque vous packagez votre +application, vous packagez donc des sources déjà générées, rien n'est généré ultérieurement. + +Les fichiers ainsi générés vous permettent de manipuler vos objets, de les charger depuis la base, les persister, +les supprimer ... Pour cela, vous disposez de plusieurs API de base qui donnent accès aux opérations les plus courantes, +mais également des classes générées qui vous évitent de devoir écrire 80% du code nécessaire à la manipulation de vos +objets. + +Par exemple, admettons que vous souhaitiez rechercher tous les emplyés qui habitent Nantes. Vous pouvez le faire en une +seule ligne sans vous soucier de comment charger des objets depuis la base : + +:: + + List<Employee> employees = personDao.forCityEquals("Nantes").findAll(); + +À l'éxécution, ToPIA va traduire ces appels de méthodes en requêtes compréhensibles par le support de persistence. À +l'heure actuelle, ToPIa se base sur `Hibernate`_, mais le framework est pensé de manière à masquer autant que possible +ce choix technique afin de faciliter une éventuelle migration vers un autre framework de mapping objet-relationnel. + + +Avantages +========= + +TODO + +Version 3.0 +=========== + +La version 3.0 de ToPIA est en cours de développement. Si vous utilisiez déjà la version 2, `consultez le guide de migration`_. + + + + + + + + + + + + +Ancienne version de la page d'accueil +===================================== + +TODO À supprimer/migrer + C'est à dire ? ~~~~~~~~~~~~~~ @@ -148,6 +201,9 @@ .. _ToPIA-service-replication: ./topia-service-replication .. _ToPIA-service-security: ./topia-service-security -.. _suivez le guide de migration: ./migrate_to_3.0.html +.. _consultez le guide de migration: ./migrate_to_3.0.html +.. _Hibernate: http://hibernate.org/ .. |RECOMMENDED| image:: recommended.png +.. |INFO| image:: info.png +.. |DIAGRAMME| image:: employeeAndCompany.png
participants (1)
-
athimel@users.nuiton.org