This is an automated email from the git hooks/post-receive script. New commit to branch site in repository topia. See http://git.nuiton.org/topia.git commit 303071f5d046ac2473ef0d2faa34653a14966cd3 Author: Arnaud Thimel <thimel@codelutin.com> Date: Fri Oct 3 18:21:56 2014 +0200 Add main page's picture --- .gitignore | 1 + jekyll/assets/employeeAndCompany-topia-code.png | Bin 0 -> 23710 bytes jekyll/assets/employeeAndCompany-topia-code.xcf | Bin 0 -> 82912 bytes jekyll/css/main.scss | 34 ++++++++++++++++++++++- jekyll/docs/y_cycle.md | 35 ++++++++++++++++++++++++ jekyll/index.md | 24 +++++++++------- jekyll/tutos/from_scratch.md | 4 +-- 7 files changed, 85 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..485dee6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea diff --git a/jekyll/assets/employeeAndCompany-topia-code.png b/jekyll/assets/employeeAndCompany-topia-code.png new file mode 100644 index 0000000..f452d16 Binary files /dev/null and b/jekyll/assets/employeeAndCompany-topia-code.png differ diff --git a/jekyll/assets/employeeAndCompany-topia-code.xcf b/jekyll/assets/employeeAndCompany-topia-code.xcf new file mode 100644 index 0000000..0b61b7d Binary files /dev/null and b/jekyll/assets/employeeAndCompany-topia-code.xcf differ diff --git a/jekyll/css/main.scss b/jekyll/css/main.scss index 1eb3719..0bcdf82 100755 --- a/jekyll/css/main.scss +++ b/jekyll/css/main.scss @@ -163,10 +163,42 @@ body.topbar-enabled { .open > .dropdown-menu { display: block; } -.highlight pre { +table.highlighttable { + border-spacing: 0px; +} +table.highlighttable td.linenos { + padding-right: 0px; +} + +table.highlighttable td.linenos pre { + font-size: 14px; + border-right: 1px solid grey; + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} + +table.highlighttable td.linenos pre code{ + font-size: 12px; +} +table.highlighttable td.code { + padding-left: 0px; +} +table.highlighttable td.code pre { + font-size: 14px; + border-left: 0px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} + +.highlight pre, .linenodiv pre { line-height: 1.2; + overflow-x: auto; } code { font-size: 14px; } +img { + border-radius: 3px; + background: linear-gradient(to bottom, rgba(58, 58, 58, 0.2) 0%, rgba(58, 58, 58, 0.1) 100%) repeat scroll 0% 0% transparent; +} diff --git a/jekyll/docs/y_cycle.md b/jekyll/docs/y_cycle.md new file mode 100644 index 0000000..253ef58 --- /dev/null +++ b/jekyll/docs/y_cycle.md @@ -0,0 +1,35 @@ +--- +layout: page +title: "Qu'est-ce qu'un cycle de développement en Y ?" +category: docs +--- + + +Le cycle de développement en Y traditionnel peut être représenté de la manière +suivante : + +Les deux branches, la branche fonctionnelle (porteuse de la solution logique) et +la branche technique (qui définit la plateforme technique sur laquelle la +solution sera implantée) se rejoignent en amont de la conception détaillée et du +codage. Cette projection peut être accompagnée de génération de code, mais il +reste toujours une certaine quantité de code écrite à la main. + +Cette séparation des responsabilités et ce processsus donnent pleine satisfaction +lors du développement initial d'un logiciel. La vie d'un logiciel commence +toutefois au moment de sa mise en production et les évolutions qui y seront +apportées sont de deux natures : + + - Évolutions fonctionnelles : Ajout de fonctionnalités, correction de bugs, ... + - Evolutions techniques : Changement de bases de données, changement de + technologie sur les UI, nouveaux accès (SOAP ?), ... + +Si les évolutions fonctionnelles sont prises en compte par la nature itérative +des processus de développement, les évolutions techniques sont elles difficiles. + +Comment passer d'Hibernate à JDO, de Swing au client léger, des EJB aux +conteneurs légers ? En supprimant les dépendances de votre code sur les briques +techniques, en codant sur une plateforme technique abstraite, interfaces et +façades au travers desquelles vous pourrez manipuler les différentes solutions +techniques que vous retiendrez. Hibernate et JDO ne sont que deux API d'accès +aux données; Swing et client léger, des UI; les EJB et les conteneurs légers, +des logiques métiers déportées... diff --git a/jekyll/index.md b/jekyll/index.md index 1fa4dc0..c47a4d6 100644 --- a/jekyll/index.md +++ b/jekyll/index.md @@ -6,12 +6,14 @@ title: "ToPIA" ToPIA est un framework d'abstraction des plateformes techniques. À l'heure actuelle ToPIA se focalise sur la persistence des données. + + Lorsque vous utilisez ToPIA, vous définissez 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. Comment ça marche ? -------------------- +=================== Avant tout, vous devez créer un modèle UML qui représente vos objets métier. @@ -34,18 +36,19 @@ Par exemple, admettons que vous souhaitiez rechercher tous les emplyés qui habi seule ligne sans vous soucier de comment charger des objets depuis la base : {% highlight java %} -List<Employee> employees = personDao.forCityEquals("Nantes").findAll(); +List<Employee> employees = + personDao.forCityEquals("Nantes").findAll(); {% endhighlight %} À 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. -<a href="#">Plus de détails sur les cycles en Y</a>. +[Plus de détails sur les cycles en Y...][y_cycle] Les services ------------- +============ Autour de la persistence, ToPIA propose un certain nombre de services qui peuvent être activés ou non et qui vous permettent de bénéficier d'autres fonctionnalités ou encore de rajouter des comportements auxquels nous n'aurions pas @@ -62,7 +65,7 @@ pensé. Avantages ---------- +========= - Principales méthodes générées pour le recherche/chargement des objets ; @@ -77,9 +80,9 @@ Avantages Par où commencer ? ------------------- +================== -ToPIA est disponible sur Maven Central +ToPIA est disponible sur Maven Central : {% highlight xml %} <dependency> @@ -97,7 +100,7 @@ Consultez les tutos pour créer votre projet à base de ToPIA en fonction de vot 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][migrate_to_topia_3]. @@ -107,6 +110,7 @@ Version 3.0 [Flyway]: http://flywaydb.org/ [Liquibase]: http://www.liquibase.org/ -[Créer un projet ToPIA en partant de rien]: {{site.baseurl}}/tutos/from_scratch.html -[migrate_to_topia_3]: {{site.baseurl}}/tutos/migrate_to_topia_3.html +[Créer un projet ToPIA en partant de rien]: {{site.baseurl}}/tutos/from_scratch.html +[migrate_to_topia_3]: {{site.baseurl}}/tutos/migrate_to_topia_3.html +[y_cycle]: {{site.baseurl}}/docs/y_cycle.html diff --git a/jekyll/tutos/from_scratch.md b/jekyll/tutos/from_scratch.md index a8259cf..5d37b25 100644 --- a/jekyll/tutos/from_scratch.md +++ b/jekyll/tutos/from_scratch.md @@ -48,7 +48,7 @@ $ mkdir src/main/xmi Dans le pom, on ajoute ToPIA en dépendance, et on configure la génération : -{% highlight xml %} +{% highlight xml linenos=table %} <properties> <topiaVersion>{{site.topiaVersion}}</topiaVersion> <eugeneVersion>{{site.eugeneVersion}}</eugeneVersion> @@ -248,7 +248,7 @@ tests, ajoutez `H2` : Voilà un test qui initialise ToPIA et créé des entités : -{% highlight java %} +{% highlight java linenos=table %} package com.company; import java.util.HashMap; -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.