Articles précédents : Articles
- [41] Le Ben NanoNote de Qi Hardware est en vente en Europe
- [31] Enlightenment France l’association
- [5] Cyberlog-corp lance une enquête sur les logiciels libres
- [2] Régionales 2010 : opération « un tract, un Pacte ! »
- [15] Master Ingénierie du Logiciel Libre (I2L) : déjà 4 ans ... et l'aventure continue !
- [12] Rapport Fourgous sur les TICE : reconnaissance partielle des apports du libre à l'éducation
- [3] Libérons les bureaux de vote !
- [29] Orange se conforme aux exigences de la licence GNU GPL
- [24] Intel et Nokia annoncent la création de MeeGo
- [6] LTSP-Cluster : Les clients légers à grande échelle
Liens connexes
- Sonar (484 clics)
- Démonstration de l'application (654 clics)
- Combattre l'érosion de son architecture applicative (243 clics)
- Notes de publication de la version 2.0 (123 clics)
- Sonar 2.0 en images (334 clics)
Dépêche modérée par
Dépêche éditée par
Articles : Sortie de la version 2.0 de Sonar
Posté par Gaudin Olivier (page perso, ). Modéré le 18 mars 2010.La version 2.0 amène dans Sonar la gestion du septième axe d'analyse de la qualité du code source. Pour rappel, les six axes déjà présents dans Sonar sont : couverture de code par les tests unitaires, vérification du respect des règles de codage, recherche de bugs potentiels, distribution de la complexité du code, recherche du code dupliqué et insuffisance de commentaires.
Le septième axe consiste à analyser le Design et l'Architecture d'une application ainsi qu'à faire ressortir des métriques orientées objet. Les fonctionnalités principales disponibles sont :
- Identifier les dépendances indésirables afin de couper les cycles entre packages ;
- Navigation dans les dépendances entre composants à l'aide d'une DSL (Dependency System Matrix) ;
- Permettre la chasse aux classes qui portent plusieurs responsabilités.
Sonar (484 clics)
Démonstration de l'application (654 clics)
Combattre l'érosion de son architecture applicative (243 clics)
Notes de publication de la version 2.0 (123 clics)
Sonar 2.0 en images (334 clics)
> Lire les commentaires (16 commentaires, moyenne: 2,3).
Maven nécessaire ?
Je fais erreur, ou sonar nécessite que le projet à analyser soit gérer avec Maven ? Si c'est bien le cas, ça limite un peu l'utilisation de l'outil : retour donc à du fait maison avec Hudson / Ant / etc.
-
[^]Re: Maven nécessaire ?
Posté par Daniel Le Berre (page perso, ) le 18/03/2010 à 22:56. (lien). Évalué à 6.Effectivement, sonar fonctionne avec Maven.
C'est d'ailleurs une bonne raison pour passer à Maven :)-
[^]Re: Maven nécessaire ?
Posté par jcs (page perso, ) le 19/03/2010 à 10:29. (lien). Évalué à 1.C'est d'ailleurs une bonne raison pour passer à Maven :)
C'est vrai, Maven a des bugs, des comportements parfois étranges, une certaine complexité et un grand manque de documentation. Toutefois il y a quelques semaines j'ai du écrire un script ant pour compiler un projet et, malgré ses défauts, j'ai regretté à chaque ligne de ne pas pouvoir utiliser maven :o)-
[^]Re: Maven nécessaire ?
Posté par Nicolas Dumoulin (Jabber id, page perso, ) le 19/03/2010 à 12:13. (lien). Évalué à 2.Niveau, je trouve perso qu'on en trouve pas mal. Entre le livre de sonatype en ligne, et la doc systématique, rationnelle et bien foutue pour chaque plugins, je me suis rarement trouvé à sec.
Après, il faut un peu de temps pour tout appréhender, mais ça se fait bien finalement (j'étais aussi un peu refroidi au départ)-
[^]Re: Maven nécessaire ?
Posté par jcs (page perso, ) le 19/03/2010 à 14:15. (lien). Évalué à 2.Désolé J'aurais du être plus précis. Je suis d'accord, la documentation d'utilisation de maven est plutôt complète et claire. Dans mon commentaire Je parlais de la documentation des API de maven et de Plexus (le framework qui est derrière) nécessaires pour écrire des plugins et là c'est un peu la misère.
-
[^]Re: Maven nécessaire ?
Posté par Franck Routier () le 19/03/2010 à 14:20. (lien). Évalué à 1.Et as-tu eu l'occasion de porter un projet déjà existant (avec un build.xml qui va bien) vers Maven ? A lire la doc, ça ne semble pas du tout évident... A moins que j'aie loupé un tuto sympa ?
-
[^]Re: Maven nécessaire ?
Posté par djano () le 19/03/2010 à 14:47. (lien). Évalué à 1.Je l'ai déjà fait sur un bon gros projet monolithique que l'on essayait de séparer en plusieurs projets en même temps et je peux te garantir que c'est pas sis simple que ça.
Je suis tombe sur des cas bien tordus et Maven n'a jamais rendu la chose simple. La philosophie Maven est super tant que tu restes dans les clous. Gare à toi si tu en sors, tu va devoir faire des bidouilles immondes pour t'en sortir. Et Google va être ton seul ami dans ce cas.
D'ailleurs il y a pas mal de monde qui n'apprécie pas bien Maven:
http://kent.spillner.org/blog/work/2009/11/14/java-build-too(...)
Un petit résumé sur mon opinion sur Maven. Un outil super pour commencer un projet simple, ou les différents composants et JAR sont déjà bien définis et où les versions des différents JARs est bien faite. Super si tu restes dans les clous de Maven.
Si ton build est un peu compliqué je conseillerais d'éviter Maven.
Je pense cependant que l'on gère mal un certain nombres de choses, mais tout n'est pas de notre faute. Au final, on se pose la question de retourner vers Ant.
-
[^]Re: Maven nécessaire ?
Posté par jcs (page perso, ) le 19/03/2010 à 15:33. (lien). Évalué à 2.Oui une fois, sur projet perso mais c'était un petit projet et je commence à avoir une bonne connaissance de maven ce qui peut biaiser mon opinion. Il y a quelques années dans ma boîte on a porté la totalité de notre code de ant vers maven 1 ; mais il y a un gouffre entre maven 1 et maven 2.
En fait je pense que c'est plus fastidieux que compliqué. Il faut souvent (re)découper son projet en module, chercher les bons plugins à utiliser, parfois mettre en place un dépot local pour les artéfacts produits par maven... Sur des gros projet ça peut être long.
Je suis d'avis que ce genre de migration n'est nécessaire que quand le projet est suffisamment gros pour que des problèmes de gestion de dépendances apparaissent. C'est là je crois le plus gros point fort de maven sur ant.
Finalement il est clair que maven simplifie pas mal la vie de celui qui gère le projet (automatisation des tests, des rapports avec Sonar, de la javadoc sur tout un ensemble de modules) mais je n'ai pas une assez longue expérience de ant, il est possible qu'un spécialiste soit capable de factoriser/appeler récursivement/... les scripts de build.
-
[^]Re: Maven nécessaire ?
Posté par Daniel Le Berre (page perso, ) le 19/03/2010 à 17:44. (lien). Évalué à 2.Oui, j'ai passé ce projet (www.sat4j.org) de ant à maven il y a 2 ans.
2 solutions :
- adapter maven a ton projet (changer l'emplacement par défaut des sources, tests, etc)
- adapter ton projet à maven
La première solution est sans doute plus simple à court terme, mais le risque est de ne pas pouvoir utiliser facilement tous les plugins disponibles ni la documentation (qui supposent une organisation spécifique du code).
La seconde solution demande une réorganisation complète des sources. Mais ensuite, pas de soucis, il suffit de prendre les exemples des plugins pour les faire fonctionner.
Gros problème de cette solution : cohabitation avec l'IDE, et les autres scripts qui utilisent la base de code.
Si le projet est du simple Java, je pense que cela ne pose pas trop de problème. Si on entre dans le cadre de JEE, il faut sans doute analyser un peu plus la situation.-
[^]Re: Maven nécessaire ?
Posté par djano () le 20/03/2010 à 02:05. (lien). Évalué à 2.Certains plugins ont la facheuse habitude d'utiliser des chemins en durs au lieu d'utiliser les variables définies dans le pom (les meta données du projet), comme dans le cas de ta premiere solution.
La seconde solution nous a posé des problemes avec Eclipse, mais c'est parce que l'on n'a pas pu finir la décomposition complete du projet avec une base de code non modulaire.
J'ajouterais que cette solution présente un inconvénient majeur dans le cas de branches de maintenance ou tout merge du code des branches anciennes vers le trunk n'est pas aisée.
Voila mon petit retour d'expérience.
-
-
-
-
-
-
[^]Re: Maven nécessaire ?
-
[^]Re: Maven nécessaire ?
Posté par Gaudin Olivier (page perso, ) le 19/03/2010 à 11:21. (lien). Évalué à 3.Sonar nécessite que Maven soit installé sur la machine afin de lancer les analyses de code, mais ne nécessite absolument pas que le projet à analyser soit géré avec Maven. Non seulement Sonar peut fonctionner en mode "light" dans lequel il n'a besoin que du code source, mais en plus il existe des connecteurs permettant de récupérer le résultat de builds venant d'autres systèmes comme ant et de les injecter dans Sonar (résultat des tests unitaires et couverture de code par exemple).
-
[^]Re: Maven nécessaire ?
Posté par Daniel Le Berre (page perso, ) le 19/03/2010 à 17:31. (lien). Évalué à 2.Si le projet est géré par maven, utiliser sonar fonctionne en deux commandes :
- lancer sonar
- mvn sonar:sonar
On peut difficilement faire plus simple :)
J'imagine qu'il est plus difficile de remplir sonar à partir d'un projet non maven ?-
[^]Re: Maven nécessaire ?
Posté par echarp (Jabber id, page perso, ) le 21/03/2010 à 14:09. (lien). Évalué à 2.C'est quasi aussi simple pour tout autre projet, il faut juste le petit fichier pom nécessaire pour "nommer" le projet.
-
-
Paquet debian ?
Super outil ce sonar.
Sauf erreur de ma part, il n'existe pas de paquets pour Debian. Est-c prévu par quelqu'un dans un futur proche ?
Car c'est ce qui m'a empêché de l'installer pour l'instant. J'ai déjà installé hudson par paquets, et c'est vraiment efficace. Mais l'idée d'installer un service sonar à la mimine … je préfère attendre encore un peu :-)
Merci aux développeurs, contributeurs, et éventuels financeurs.
Bravo
Bravo pour la sortie de la v2.
Vous faites vraiment un super outil, bien foutu, joli, et simple.
Et la boite derrière (SonarSource) semble d'un bon esprit vis à vis de la communauté et du projet.
Dommage qu'on n'est pas eu de démo à SolutionsLinux, ca aurait été l'occaz ....



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.