<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Noo Code Conventions</title>
	<atom:link href="http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/feed" rel="self" type="application/rss+xml" />
	<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions</link>
	<description>le petit monde de Play! framework (et de Wicket)...</description>
	<lastBuildDate>Mon, 02 Jan 2012 13:24:47 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Kokoni</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2569</link>
		<dc:creator>Kokoni</dc:creator>
		<pubDate>Mon, 22 Dec 2008 15:15:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2569</guid>
		<description>Je découvre l&#039;article à l&#039;instant ainsi que les commentaires. 

Pour revenir sur le tout anglais, c&#039;est une solution mais attention tout de même. Quand on travaille dans des domaines techniques pointus, nos chers utilisateurs ont un certain vocabulaire (français, anglais voir même franglais !), si on utilise des termes traduit assez différents pour qu&#039;ils ne soient pas parlant, ça peut poser des problèmes. Il faut alors mettre en place une table de traduction documentée et c&#039;est pas franchement pratique à tenir à jour ou même à consulter.

Sans compter que tant qu&#039;à traduire, autant traduire juste et c&#039;est pas donné à tout le monde (même à Harraps!). Un cas qui me vient à l&#039;esprit car je bosse dessus : Mesure d&#039;épaisseur limite se traduit en &quot;Wall thickness measurement&quot;, ce n&#039;est pas littérale.</description>
		<content:encoded><![CDATA[<p>Je découvre l&#8217;article à l&#8217;instant ainsi que les commentaires. </p>
<p>Pour revenir sur le tout anglais, c&#8217;est une solution mais attention tout de même. Quand on travaille dans des domaines techniques pointus, nos chers utilisateurs ont un certain vocabulaire (français, anglais voir même franglais !), si on utilise des termes traduit assez différents pour qu&#8217;ils ne soient pas parlant, ça peut poser des problèmes. Il faut alors mettre en place une table de traduction documentée et c&#8217;est pas franchement pratique à tenir à jour ou même à consulter.</p>
<p>Sans compter que tant qu&#8217;à traduire, autant traduire juste et c&#8217;est pas donné à tout le monde (même à Harraps!). Un cas qui me vient à l&#8217;esprit car je bosse dessus : Mesure d&#8217;épaisseur limite se traduit en &#8220;Wall thickness measurement&#8221;, ce n&#8217;est pas littérale.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Grégo</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2503</link>
		<dc:creator>Grégo</dc:creator>
		<pubDate>Wed, 17 Dec 2008 18:58:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2503</guid>
		<description>userValid = &quot;Grégo&quot;;</description>
		<content:encoded><![CDATA[<p>userValid = &#8220;Grégo&#8221;;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FiNalsPY</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2484</link>
		<dc:creator>FiNalsPY</dc:creator>
		<pubDate>Tue, 16 Dec 2008 17:03:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2484</guid>
		<description>J&#039;adore l&#039;exemple du printemps ... et toi alors tu code en quoi ? Ah ben moi cet hiver je me mets au printemps mais je continue d&#039;hiberner ^^

@Nico&amp;Alex  pour le &quot;is&quot; je ne dis pas de ne pas l&#039;utiliser ... mais faut se méfier c&#039;est tout ce que je dis.

@Nico pour Checkstyle t&#039;es un peu trop Agile ;) ... ok tu le desactives pas ... tu te demmerdes pour qu&#039;il soit en cohérence avec tes règles. C&#039;est bien parfois ... ou pas ... :P parce que du coup c&#039;est plus cohérent avec celles des autres.

Enfin pour l&#039;algo ben ca dépend si c&#039;est juste un truc super simple compréhensible par le premier venu ok j&#039;adhère. Maintenant si tu bosses avec des calculs un peu complexe, des variables pas forcément parlantes car résultats de calculs intermédiaires etc... ben ton code est incompréhensible, et un peu d&#039;algo ça aide à éclaircir le truc.

J&#039;ai un exemple en tête sur des calculs de coordonnées sur une grille formée d&#039;hexagones en fonction de coordonnée x/y classiques ... bref il faut déterminer des pentes de droites, des décalages de position etc. 
Il y a plein de modulo, arrondis, de largeur/2 ou autres hauteur/3 etc. 
Quelqu&#039;un qui ne s&#039;est pas un peu plongé dans la problématique ne comprendra rien au code ... avec une ligne pour dire ce que l&#039;on calcul et pourquoi, ça devient plus clair. 

Bref pour moi ca dépend de pas mal de choses jedis pas qu&#039;il faut absolument laisser son pseudo algo ... je dis que parfois ca aide, et que parfois tout ne peut pas être mis dans la javadoc. 
Pour moi la javadoc indique surtout ce que fais la méthode mais pas comment elle le fait dans le détail non plus. Quand on l&#039;utilise on s&#039;en fout de savoir toutes les étapes internes... par contre en debug ou en évolution on est content de comprendre ce qu&#039;a voulu faire le gus précédent et pourquoi.

Comme tu disais au final ça reste une question de bon sens, on est d&#039;accord la dessus.</description>
		<content:encoded><![CDATA[<p>J&#8217;adore l&#8217;exemple du printemps &#8230; et toi alors tu code en quoi ? Ah ben moi cet hiver je me mets au printemps mais je continue d&#8217;hiberner ^^</p>
<p>@Nico&amp;Alex  pour le &#8220;is&#8221; je ne dis pas de ne pas l&#8217;utiliser &#8230; mais faut se méfier c&#8217;est tout ce que je dis.</p>
<p>@Nico pour Checkstyle t&#8217;es un peu trop Agile <img src='http://www.noocodecommit.com/blog/nicogiard/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  &#8230; ok tu le desactives pas &#8230; tu te demmerdes pour qu&#8217;il soit en cohérence avec tes règles. C&#8217;est bien parfois &#8230; ou pas &#8230; <img src='http://www.noocodecommit.com/blog/nicogiard/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  parce que du coup c&#8217;est plus cohérent avec celles des autres.</p>
<p>Enfin pour l&#8217;algo ben ca dépend si c&#8217;est juste un truc super simple compréhensible par le premier venu ok j&#8217;adhère. Maintenant si tu bosses avec des calculs un peu complexe, des variables pas forcément parlantes car résultats de calculs intermédiaires etc&#8230; ben ton code est incompréhensible, et un peu d&#8217;algo ça aide à éclaircir le truc.</p>
<p>J&#8217;ai un exemple en tête sur des calculs de coordonnées sur une grille formée d&#8217;hexagones en fonction de coordonnée x/y classiques &#8230; bref il faut déterminer des pentes de droites, des décalages de position etc.<br />
Il y a plein de modulo, arrondis, de largeur/2 ou autres hauteur/3 etc.<br />
Quelqu&#8217;un qui ne s&#8217;est pas un peu plongé dans la problématique ne comprendra rien au code &#8230; avec une ligne pour dire ce que l&#8217;on calcul et pourquoi, ça devient plus clair. </p>
<p>Bref pour moi ca dépend de pas mal de choses jedis pas qu&#8217;il faut absolument laisser son pseudo algo &#8230; je dis que parfois ca aide, et que parfois tout ne peut pas être mis dans la javadoc.<br />
Pour moi la javadoc indique surtout ce que fais la méthode mais pas comment elle le fait dans le détail non plus. Quand on l&#8217;utilise on s&#8217;en fout de savoir toutes les étapes internes&#8230; par contre en debug ou en évolution on est content de comprendre ce qu&#8217;a voulu faire le gus précédent et pourquoi.</p>
<p>Comme tu disais au final ça reste une question de bon sens, on est d&#8217;accord la dessus.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: nicogiard</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2483</link>
		<dc:creator>nicogiard</dc:creator>
		<pubDate>Tue, 16 Dec 2008 16:33:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2483</guid>
		<description>@FinalSpy : Saligot ! oui la javadoc toussaaaa.
Pour ce qui concerne la langue utilisée, effectivement c&#039;est mieux quand c&#039;est uniforme. Mais attention à ne pas faire comme nos chères larves de l&#039;académie française qui tentent absoluement de tout franciser. Et même si ton client souhaite du code source en français, tu va quand même pas remplacer Spring par printemps! 

Pour le point 3°, c&#039;est ton habitude ok, mais c&#039;est franchement pas quelquechose que je conseillerai. Personnellement si l&#039;algo parle de lui même je vois pas pourquoi laisser la polution du commentaire qui t&#039;as permis d&#039;en venir à écrire cela. Là c&#039;est vraiment une question de point de vue.

Par contre je vois pas où tu as vu que je désactivai checkstyle!!! C&#039;est un outil indispensable pour vérifier la cohérence du code source avec les conventions. Et je l&#039;utilise tout le temps. Après, étant adepte du refactorring permanent, si y&#039;avait des règles déconnantes ...

@Miumius : Bien joué!

@Alex: je rejoins FinalSpy, mieux vaut que la variable s&#039;appelle userValid. (beurk ca me rappelle de mauvais souvenirs cette histoire de struts...)</description>
		<content:encoded><![CDATA[<p>@FinalSpy : Saligot ! oui la javadoc toussaaaa.<br />
Pour ce qui concerne la langue utilisée, effectivement c&#8217;est mieux quand c&#8217;est uniforme. Mais attention à ne pas faire comme nos chères larves de l&#8217;académie française qui tentent absoluement de tout franciser. Et même si ton client souhaite du code source en français, tu va quand même pas remplacer Spring par printemps! </p>
<p>Pour le point 3°, c&#8217;est ton habitude ok, mais c&#8217;est franchement pas quelquechose que je conseillerai. Personnellement si l&#8217;algo parle de lui même je vois pas pourquoi laisser la polution du commentaire qui t&#8217;as permis d&#8217;en venir à écrire cela. Là c&#8217;est vraiment une question de point de vue.</p>
<p>Par contre je vois pas où tu as vu que je désactivai checkstyle!!! C&#8217;est un outil indispensable pour vérifier la cohérence du code source avec les conventions. Et je l&#8217;utilise tout le temps. Après, étant adepte du refactorring permanent, si y&#8217;avait des règles déconnantes &#8230;</p>
<p>@Miumius : Bien joué!</p>
<p>@Alex: je rejoins FinalSpy, mieux vaut que la variable s&#8217;appelle userValid. (beurk ca me rappelle de mauvais souvenirs cette histoire de struts&#8230;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FiNalsPY</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2481</link>
		<dc:creator>FiNalsPY</dc:creator>
		<pubDate>Tue, 16 Dec 2008 15:13:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2481</guid>
		<description>Attention sur l&#039;utilisation du isX ... il arrive que certaines bibliothèques tierces fonctionnant sur l&#039;introspection ne reconnaissent pas correctement ces accesseurs. 
De mémoire ... et pour l&#039;anecdote ... Struts y est quelque peu allergique (après ça dépend peut-être des versions...) et oui je sais Struts c&#039;est la préhistoire (pour rester poli ^^ )</description>
		<content:encoded><![CDATA[<p>Attention sur l&#8217;utilisation du isX &#8230; il arrive que certaines bibliothèques tierces fonctionnant sur l&#8217;introspection ne reconnaissent pas correctement ces accesseurs.<br />
De mémoire &#8230; et pour l&#8217;anecdote &#8230; Struts y est quelque peu allergique (après ça dépend peut-être des versions&#8230;) et oui je sais Struts c&#8217;est la préhistoire (pour rester poli ^^ )</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex dP</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2479</link>
		<dc:creator>Alex dP</dc:creator>
		<pubDate>Tue, 16 Dec 2008 13:04:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2479</guid>
		<description>J&#039;ajoute un petit complément : les constantes en majuscules avec des unserscores (_) pour séparer les mots. 

Les variables booléennes doivent toujours commencer par &quot;is&quot;. Ex : isUserValid. De même, pour les getters associés à un boolean, on ne met pas getUserValid() mais isUserValid()

Les noms des méthodes ne sont jamais un nom mais plutôt un adjectif ou un verbe. Par exemple mailSender(), c&#039;est un nom à la con pour une méthode. Cela ne décrit pas l&#039;action souhaitée. Alors que sendMail(), c&#039;est beaucoup plus parlant.

Bref, je m&#039;arrête là, le reste se trouve dans le livre &#039;Code complete&#039; chez Microsoft Press. Un pavé imbouffable mais vraiement génial.</description>
		<content:encoded><![CDATA[<p>J&#8217;ajoute un petit complément : les constantes en majuscules avec des unserscores (_) pour séparer les mots. </p>
<p>Les variables booléennes doivent toujours commencer par &#8220;is&#8221;. Ex : isUserValid. De même, pour les getters associés à un boolean, on ne met pas getUserValid() mais isUserValid()</p>
<p>Les noms des méthodes ne sont jamais un nom mais plutôt un adjectif ou un verbe. Par exemple mailSender(), c&#8217;est un nom à la con pour une méthode. Cela ne décrit pas l&#8217;action souhaitée. Alors que sendMail(), c&#8217;est beaucoup plus parlant.</p>
<p>Bref, je m&#8217;arrête là, le reste se trouve dans le livre &#8216;Code complete&#8217; chez Microsoft Press. Un pavé imbouffable mais vraiement génial.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FiNalsPY</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2434</link>
		<dc:creator>FiNalsPY</dc:creator>
		<pubDate>Thu, 11 Dec 2008 17:29:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2434</guid>
		<description>lol ... c&#039;est pas faux ^^ 
PAs bien réveillé sur ce coup là le gars !</description>
		<content:encoded><![CDATA[<p>lol &#8230; c&#8217;est pas faux ^^<br />
PAs bien réveillé sur ce coup là le gars !</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Grégo</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2432</link>
		<dc:creator>Grégo</dc:creator>
		<pubDate>Thu, 11 Dec 2008 13:50:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2432</guid>
		<description>Mince on a réveillé Miumius. Garde bien son commentaire Nico, c&#039;est collector ça aura de la valeur plus tard.</description>
		<content:encoded><![CDATA[<p>Mince on a réveillé Miumius. Garde bien son commentaire Nico, c&#8217;est collector ça aura de la valeur plus tard.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Miumius</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2431</link>
		<dc:creator>Miumius</dc:creator>
		<pubDate>Thu, 11 Dec 2008 13:20:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2431</guid>
		<description>Juste pour faire mon chieur &quot;public static String CONSTANTE = “INVARIABLE” &quot; n&#039;est pas une constante en java. C&#039;est le mot clef final qui fait une constante, static sert juste à dire que c&#039;est un attribut de la classe pas de l&#039;objet instancié.</description>
		<content:encoded><![CDATA[<p>Juste pour faire mon chieur &#8220;public static String CONSTANTE = “INVARIABLE” &#8221; n&#8217;est pas une constante en java. C&#8217;est le mot clef final qui fait une constante, static sert juste à dire que c&#8217;est un attribut de la classe pas de l&#8217;objet instancié.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Grégo</title>
		<link>http://www.noocodecommit.com/blog/nicogiard/stuff/noo-code-conventions/comment-page-1#comment-2429</link>
		<dc:creator>Grégo</dc:creator>
		<pubDate>Thu, 11 Dec 2008 09:03:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.noocodecommit.com/blog/nicogiard/?p=320#comment-2429</guid>
		<description>Je te rejoins carrément FinalSpy sur l&#039;algorithme écrit en commentaire et codé ensuite.

Et merci d&#039;avoir parlé de la langue des variables, point que j&#039;ai zappé mais qui me tient beaucoup à coeur. Je suis un fervent défenseur du tout anglais, pour deux raisons principales :
- Pouvoir décrire plus de choses facilement avec moins de mots
- Ne pas avoir d&#039;ambiguïtés sur l&#039;accord de participes passés et adjectifs : puisque on ne peut pas mettre d&#039;accents dans le code, on se retrouve parfois avec des incertitude quant au rôle précis de la variable.</description>
		<content:encoded><![CDATA[<p>Je te rejoins carrément FinalSpy sur l&#8217;algorithme écrit en commentaire et codé ensuite.</p>
<p>Et merci d&#8217;avoir parlé de la langue des variables, point que j&#8217;ai zappé mais qui me tient beaucoup à coeur. Je suis un fervent défenseur du tout anglais, pour deux raisons principales :<br />
- Pouvoir décrire plus de choses facilement avec moins de mots<br />
- Ne pas avoir d&#8217;ambiguïtés sur l&#8217;accord de participes passés et adjectifs : puisque on ne peut pas mettre d&#8217;accents dans le code, on se retrouve parfois avec des incertitude quant au rôle précis de la variable.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

