Précédent   Forum du club des développeurs et IT Pro > Java > Communauté Java
Communauté Java Suivez l'actualité et contribuez à la vie de la communauté francophone Java
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 13/07/2012, 16h30   #21
sekaijin
Expert Confirmé Sénior
 
Avatar de sekaijin
 
Homme
Urbaniste
Inscription : juillet 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 49
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Urbaniste
Secteur : Santé

Informations forums :
Inscription : juillet 2004
Messages : 2 126
Points : 5 057
Points : 5 057
Citation:
Envoyé par thierryler Voir le message
Perso, durant mes essais, ça a été invisible
chez moi aussi
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2012, 01h57   #22
gencoforlife
Invité de passage
 
Homme Jérémy Gasperowicz
Ingénieur d'études
Inscription : mai 2010
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme Jérémy Gasperowicz
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Ingénieur d'études
Secteur : Enseignement

Informations forums :
Inscription : mai 2010
Messages : 1
Points : 0
Points : 0
Bonjour,

Merci également pour cet article qui est très bon.

Citation:
On doit ensuite faire un refresh (touche F5) dans Eclipse pour faire apparaitre Guava (et ses dépendances) dans la liste des bibliothèques référencées.
Pour la première fois où cette phrase apparait : On doit ensuite faire un refresh (touche F5) dans Eclipse pour faire apparaitre Apache Commons Lang (et ses dépendances) dans la liste des bibliothèques référencées.
gencoforlife est déconnecté   Envoyer un message privé Réponse avec citation 12
Vieux 27/07/2012, 15h40   #23
natha
Expert Confirmé
 
Avatar de natha
 
Inscription : janvier 2006
Messages : 2 344
Détails du profil
Informations personnelles :
Localisation : Suisse

Informations forums :
Inscription : janvier 2006
Messages : 2 344
Points : 2 861
Points : 2 861
Citation:
Envoyé par Nemek Voir le message
Ensuite les outils utilisés par Sonar proposent TOUS un système d'exclusion. En ciblant correctement, on peut avoir des "bonnes" stats.
J'ai travaillé sur des projets où les entités censées contenir uniquement des getters/setters étaient ignorées des analyses SONAR. Par curiosité j'ai enlevé le filtre et quelle ne fut pas ma surprise d'avoir des dépendances cycliques de packages, des dizaines de violations supplémentaires, etc.
C'est toujours compliqué de trouver le juste milieux.
__________________
Comment ça ? La réponse à ton problème n'est ni dans la faq, ni dans les tutos, ni dans sources ??? Etonnant...
De la bonne manière de poser une question (et de répondre).
Je ne fais pas de service par MP. Merci (...de lire les règles...).
Ma page dvp.com
natha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2012, 00h22   #24
Khaled.Noordin
Membre éprouvé
 
Avatar de Khaled.Noordin
 
Homme Khaled Noordin Abou Imran
Inscription : janvier 2005
Messages : 341
Détails du profil
Informations personnelles :
Nom : Homme Khaled Noordin Abou Imran
Localisation : France, Hauts de Seine (Île de France)

Informations forums :
Inscription : janvier 2005
Messages : 341
Points : 468
Points : 468
Salut a tous
bon bah je vais passer pour un troll, mais pourquoi ne pas simplifier votre code en utilisant groovy et gmaven
La dernière fois que j'ai utilisé lombok intellij ne voyait pas la génération des méthodes au runtime, et les equals et hashcode étaient peu customisable.

En tous cas merci pour l'article
__________________
Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément. Nicolas Boileau

Si c'est résolu, cliquez, cliquez, cliquez!!!!
Khaled.Noordin est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/08/2012, 00h14   #25
dark.jabberwock
Membre du Club
 
Avatar de dark.jabberwock
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2009
Messages : 37
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : décembre 2009
Messages : 37
Points : 54
Points : 54
Merci pour cet article. Je découvre plein de choses d'un coup...

Le seul truc qui me dérange est le fait de devoir modifier l'IDE avec Lombok. Sinon c'est clair que ça peut être un sacré gain de temps...
dark.jabberwock est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2012, 01h03   #26
Robin56
Modérateur
 
Avatar de Robin56
 
Homme Nicolas
Ingénieur développement logiciels
Inscription : juin 2009
Messages : 2 777
Détails du profil
Informations personnelles :
Nom : Homme Nicolas
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : juin 2009
Messages : 2 777
Points : 7 463
Points : 7 463
Citation:
Envoyé par dark.jabberwock Voir le message
Le seul truc qui me dérange est le fait de devoir modifier l'IDE avec Lombok. Sinon c'est clair que ça peut être un sacré gain de temps...
Je ne sais pas si l'on peut parler de gain de temps car un "Generate getters and setters" est assez rapide d'origine. Je parlerais plutôt de gain de lisibilité et de qualité de code.
__________________
Robin56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2012, 02h09   #27
dark.jabberwock
Membre du Club
 
Avatar de dark.jabberwock
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2009
Messages : 37
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : décembre 2009
Messages : 37
Points : 54
Points : 54
En fait Robin56 je pensais à un gain de temps si l'on utilise l'annotation @Data. Car au niveau d'Eclipse même avec les raccourcis clavier, c'est plus court d'écrire 5 lettres en annotations que de générer via l'IDE les différents éléments générés par @Data. Par contre le "sacré gain de temps" est largement exagéré de ma part j'en convient.

Après effectivement c'est surtout un gain de lisibilité et pour moi une certaine qualité de code notamment au niveau equals et hashCode.

Réflexion à part, en pensant aux métriques de Sonar (je ne connais que peu le paramétrage de l'outil), on nettoie peut être un peu la partie nombre de ligne de code et pourcentage de commentaire. A moins que pour ces informations, on puisse également exclure les classes de certaines vérifications. Là dessus qu'en pensez-vous ?
dark.jabberwock est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2012, 13h40   #28
Nemek
Modérateur
 
Avatar de Nemek
 
Homme Logan
Développeur Java
Inscription : août 2005
Messages : 1 701
Détails du profil
Informations personnelles :
Nom : Homme Logan
Âge : 27
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Java
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : août 2005
Messages : 1 701
Points : 3 682
Points : 3 682
Citation:
Envoyé par natha Voir le message
J'ai travaillé sur des projets où les entités censées contenir uniquement des getters/setters étaient ignorées des analyses SONAR. Par curiosité j'ai enlevé le filtre et quelle ne fut pas ma surprise d'avoir des dépendances cycliques de packages, des dizaines de violations supplémentaires, etc.
C'est toujours compliqué de trouver le juste milieux.
Je te l'accorde ! D'ailleurs à l'inverse sur mes projets j'ai des classes bêtes et méchantes (type utilitaire) qui sont marqués en Hot Spot (pas sûr du nom). De même, les classes un peu critique au sens de l'analyse statique (beaucoup de code) remonte rapidement alors que d'autres classes avec moins code mais très critique vont rester dans le bas du tableau, derrière des POJO, parce qu'elles ont peu de code.

Cependant, dans ton cas, il semble surtout que ce soit un problème d'identification des exclusions. Je suggère fortement aux architectes/concepteurs/dev leader de définir clairement des règles aussi bien de codage que d'organisation des packages ou des règles précises de nommage.
Ca permet dans tous les cas à quelqu'un de comprendre là où il se trouve (lors de la navigation / recherche) et où il doit chercher dans le code.

Autre point, certaines règles ne devraient pas avoir d'exclusion (en tout cas, je ne vois pas de raison), et je pense dans ton cas, à l'analyse des dépendances.

Enfin, cela me donne une idée pas si mal, inclure des analyses spécifiques pour ce qui a été exclu. Je ne sais pas si cela est possible avec Sonar ... Par exemple, vérifier qu'il s'agit de simple POJO.

Citation:
Envoyé par Robin56 Voir le message
Je ne sais pas si l'on peut parler de gain de temps car un "Generate getters and setters" est assez rapide d'origine. Je parlerais plutôt de gain de lisibilité et de qualité de code.
En maintenance, ca fait toujours gagner pas mal de temps et éviter des erreurs bêtes comme supprimer des getter/setter mais pas l'attribut et pour le couple equals/hashCode j'en parle même pas !


Citation:
Envoyé par dark.jabberwock Voir le message
Réflexion à part, en pensant aux métriques de Sonar (je ne connais que peu le paramétrage de l'outil), on nettoie peut être un peu la partie nombre de ligne de code et pourcentage de commentaire. A moins que pour ces informations, on puisse également exclure les classes de certaines vérifications. Là dessus qu'en pensez-vous ?
Vu qu'il n'y a pas de code, ces métriques ne sont pas "impactées". Comme je le mentionnai ca ne peut qu'augmenter la justesse des métriques.
Exemple, 10 erreurs sur 100 lignes utiles ou sur 125 dont 25 inutiles, ca donne 10% ou 8% d'erreur. Si on considère qu'il y a beaucoup de POJO, surtout avec des framework comme Struts (Forms) / JSF (Backing bean) / JPA (Persistent class) / J2EE (EJB), il doit y avoir un paquet de lignes de codes non critiques.
__________________
Java : Forum - FAQ - Java SE 7 API - Java EE 6 API

ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
Une solution vous convient ? N'oubliez pas le tag
Signature par pitipoisson
Nemek est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 20h43.


 
 
 
 
Partenaires

Hébergement Web