<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Quand N@t communique... &#187; task</title>
	<atom:link href="http://www.richand.info/blog/tag/task/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.richand.info/blog</link>
	<description>Développement personnel, personal MBA et tout ce qui touche à la vie d'un consultant logiciel.</description>
	<lastBuildDate>Sat, 29 Oct 2011 11:07:07 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>Eclipse tips : regex et liste des tâches</title>
		<link>http://www.richand.info/blog/2008/03/eclipse-tips-regex-et-liste-des-taches/</link>
		<comments>http://www.richand.info/blog/2008/03/eclipse-tips-regex-et-liste-des-taches/#comments</comments>
		<pubDate>Sun, 16 Mar 2008 11:16:53 +0000</pubDate>
		<dc:creator>Nathaniel Richand</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[regex]]></category>
		<category><![CDATA[task]]></category>

		<guid isPermaLink="false">http://www.richand.info/blog/?p=13</guid>
		<description><![CDATA[Pour aujourd&#8217;hui quelques astuces Eclipse. Elles sont très simples, mais je les utilise vraiment quotidiennement et je me rend compte que pas mal de personnes ne les connaissent pas. La première est l&#8217;utilisation des regex dans l&#8217;éditeur « rechercher/remplacer ». Comment peut-on gagner beaucoup de temps et s&#8217;éviter un boulot à la con ? La [...]]]></description>
			<content:encoded><![CDATA[<p>Pour aujourd&#8217;hui quelques astuces Eclipse. Elles sont très simples, mais je les utilise vraiment quotidiennement et je me rend compte que pas mal de personnes ne les connaissent pas.<br />
<img src="http://www.picocontainer.org/script/images/eclipse-logo-white.jpg" style="width: 155px; height: 90px" height="90" width="155" /></p>
<ul>
<li> La première est l&#8217;utilisation des regex dans l&#8217;éditeur « rechercher/remplacer ». Comment peut-on gagner beaucoup de temps et s&#8217;éviter un boulot à la con ?</li>
<li>La seconde est l&#8217;utilisation des « tasks » (TODO, FIXME, &#8230;). Comment bien les utiliser, comment créer les siennes ?</li>
</ul>
<p><span id="more-13"></span></p>
<h2>Astuce 1 : gagnez du temps, utilisez les regex</h2>
<p>Il n&#8217;y a rien de plus chiant quand l&#8217;on code que de faire des séquences répétitives comme par exemple : (appui sur la touche &laquo;&nbsp;fin&nbsp;&raquo;, &laquo;&nbsp;;&nbsp;&raquo;, &laquo;&nbsp;flèche du bas&nbsp;&raquo; ) * 20 &#8230;</p>
<p>Plutôt que d&#8217;effectuer des tâches répétitives, je préfère bien souvent plutôt utiliser le temps que je passe d&#8217;habitude à effectuer ceci et ensuite à corriger les erreurs (qui s&#8217;insèrent souvent lorsque l&#8217;on fait ce genre de chose) par plutôt chercher une expression régulière qui effectuera ce boulôt.</p>
<p>Eclipse propose un support basique mais assez efficace des regex dans l&#8217;écran &laquo;&nbsp;Rechercher/Remplacer&nbsp;&raquo; (raccourci ctr+F). Pour celà, il suffit de cliquer sur la checkbox &laquo;&nbsp;Regular Expression&nbsp;&raquo;.</p>
<p><img src="/blog/wp-includes/images/EclipseTips/Replace1.jpg" /></p>
<p>La syntaxe est identique aux expressions régulières java : &laquo;&nbsp;.&nbsp;&raquo; pour tout caractère, &laquo;&nbsp;*&nbsp;&raquo; pour répéter 0 ou n fois, &laquo;&nbsp;()&nbsp;&raquo; pour capturer un groupe, &laquo;&nbsp;[\w] pour récupérer uniquement les caractères de mots, etc&#8230;</p>
<p>Pour récupérer les groupes que l&#8217;on a capturé, on utilise dans la partie &laquo;&nbsp;replace with&nbsp;&raquo; les expressions $1 pour le premier groupe, $2 pour le suivant, etc&#8230;</p>
<p><u>Un petit exemple bateau :</u></p>
<p>A partir de l&#8217;exemple ci dessus, imaginez que l&#8217;on veuille vérifier que toutes les variables de classes ne soient pas nulles.</p>
<p>On copie colle la définition des variables dans notre méthode (voir image1).</p>
<p>On recherche l&#8217;expression : &laquo;&nbsp;Private String ([\w]*) = &laquo;&nbsp;&nbsp;&raquo;;&nbsp;&raquo;</p>
<p>Que l&#8217;on remplace par exemple par : &laquo;&nbsp;if($1 != null &amp;&amp; !($1).equals(&laquo;&nbsp;&nbsp;&raquo;)){}</p>
<p>Ce qui produit comme résultat :</p>
<p><img src="/blog/wp-includes/images/EclipseTips/Replace2.jpg" style="width: 433px; height: 218px" height="218" width="433" /></p>
<p>Marvellous!</p>
<h2>Astuce 2 : n&#8217;oubliez rien, utilisez les tasks</h2>
<p>Je suis un fan des TODO/FIXME. C&#8217;est à dire que plutôt que d&#8217;écrire sur trois milles post-it les choses restant à faire, ou à corriger ou bien d&#8217;utiliser l&#8217;éternel &laquo;&nbsp;Nouveau document texte.txt&nbsp;&raquo; posé sur le bureau. Je préfère que tous ces éléments soient directement intégrés dans le code.</p>
<p>La vue des tasks se présente comme suit :</p>
<p><img src="/blog/wp-includes/images/EclipseTips/TasksList.jpg" /></p>
<p>On remarque tout de suite que l&#8217;avantage est que les tâches sont localisés à l&#8217;endroit ou elle doivent être. Un clic et on s&#8217;y rend. De plus, elle sont priorisable (high, normal ou low).</p>
<p>On peut de plus créer ses propres tâches personnalisées. Pour cela, se rendre dans les préférences -&gt; Java -&gt; Compiler -&gt; tasks tags :</p>
<p><img src="/blog/wp-includes/images/EclipseTips/AddTask.jpg" /></p>
<p>Le seul inconvénient, est que l&#8217;on sera le seul dans l&#8217;équipe à  les voir si les autres ne rajoutent pas ces mêmes tâches. Dans l&#8217;exemple, j&#8217;ai rajouté une tâche NAT avec une priorité haute. J&#8217;ai aussi pour habitude de descendre la tâche XXX en priorité faible.</p>
<p>Un autre truc cool avec les tâches est la gestion facile des filtres. Ces filtres ressemblent pas mal à ceux de la vue &laquo;&nbsp;Errors&nbsp;&raquo; :</p>
<p><img src="/blog/wp-includes/images/EclipseTips/FilterTasks.jpg" /></p>
<p>Ce qui est intéressant est de placer le filtre sur uniquement la classe ouverte lorsque l&#8217;on code (radio &laquo;&nbsp;On selected Element Only&nbsp;&raquo;) et éventuellement de filter sur les priorités. Quand on veux ensuite faire du refactoring global on enlève ces filtres, pratique!</p>
<h2>Bonus :</h2>
<p>En petit bonus aujourd&#8217;hui, je vous propose cet article que j&#8217;ai découvert hier, présentant <a href="http://java.dzone.com/news/effective-eclipse-fix-it-quick" onclick="javascript:pageTracker._trackPageview('/outbound/article/java.dzone.com');">diverses astuces Eclipse</a>.</p>
<p>Une astuce utile à laquelle je n&#8217;avais pas réfléchi et de remplacer dans les templates la génération du try/catch  pour insérer dans le catch :</p>
<p><em>   logger.severe(&laquo;&nbsp;Exception caught: &nbsp;&raquo; + ${exception_var});  </em></p>
<p>Tout bête, mais pratique.</p>
<p>C&#8217;est tout pour aujourd&#8217;hui. En espérant vous avoir fait gagner 5 minutes sur votre prochaine journée <img src='http://www.richand.info/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.richand.info/blog/2008/03/eclipse-tips-regex-et-liste-des-taches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

