<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Just a Coder Blog</title>
	<atom:link href="http://taranael.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://taranael.wordpress.com</link>
	<description>Partage de connaissances informatiques</description>
	<lastBuildDate>Mon, 17 Aug 2009 19:53:42 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='taranael.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Just a Coder Blog</title>
		<link>http://taranael.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://taranael.wordpress.com/osd.xml" title="Just a Coder Blog" />
	<atom:link rel='hub' href='http://taranael.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Un peu de pub</title>
		<link>http://taranael.wordpress.com/2009/02/04/un-peu-de-pub/</link>
		<comments>http://taranael.wordpress.com/2009/02/04/un-peu-de-pub/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 13:25:07 +0000</pubDate>
		<dc:creator>Pierre</dc:creator>
				<category><![CDATA[Blabla]]></category>

		<guid isPermaLink="false">http://taranael.wordpress.com/?p=33</guid>
		<description><![CDATA[Tout d&#8217;abord, si vous bien aimé mon blog et que vous le trouvez utile vous pouvez mettre un p&#8217;tit +1 sur Digg: http://digg.com/programming/Just_a_Coder_Blog Ensuite, je fais un peu de pub à mon collègue, Camille Roux, qui m&#8217;alimente souvent en informations interessante. Il tient son propre blog dans lequel il parle de Flex, de Ruby et [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=33&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Tout d&#8217;abord, si vous bien aimé mon blog et que vous le trouvez utile vous pouvez mettre un p&#8217;tit +1 sur Digg:</p>
<p><a href="http://digg.com/programming/Just_a_Coder_Blog">http://digg.com/programming/Just_a_Coder_Blog</a></p>
<p>Ensuite, je fais un peu de pub à mon collègue, Camille Roux, qui m&#8217;alimente souvent en informations interessante. Il tient son propre blog dans lequel il parle de Flex, de Ruby et de bien d&#8217;autres choses.</p>
<p><a href="http://www.camilleroux.com/">http://www.camilleroux.com/</a></p>
<p>Bonne journée à tous</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/taranael.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/taranael.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/taranael.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/taranael.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/taranael.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/taranael.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/taranael.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/taranael.wordpress.com/33/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=33&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://taranael.wordpress.com/2009/02/04/un-peu-de-pub/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25ea5b35935ee51ddefbc70ac569158a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Pierre</media:title>
		</media:content>
	</item>
		<item>
		<title>Dynamic Languages Strike Back</title>
		<link>http://taranael.wordpress.com/2009/02/02/dynamic-languages-strike-back/</link>
		<comments>http://taranael.wordpress.com/2009/02/02/dynamic-languages-strike-back/#comments</comments>
		<pubDate>Mon, 02 Feb 2009 21:32:43 +0000</pubDate>
		<dc:creator>Pierre</dc:creator>
				<category><![CDATA[Blabla]]></category>
		<category><![CDATA[informatique]]></category>
		<category><![CDATA[programmation]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://taranael.wordpress.com/?p=30</guid>
		<description><![CDATA[Un petit mot pour présenter une vidéo de l&#8217;université américaine de Stanford sur les langages dynamiques tels que Python et Ruby pour ne citer qu&#8217;eux. L&#8217;intervenant est un employé de chez Google, et désolé mais c&#8217;est de l&#8217;anglais &#8230; mais accrochez vous le discours est très interessant ! http://www.youtube.com/watch?v=tz-Bb-D6teE Pour avoir un petit oeil critique [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=30&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Un petit mot pour présenter une vidéo de l&#8217;université américaine de Stanford sur les langages dynamiques tels que Python et Ruby pour ne citer qu&#8217;eux. L&#8217;intervenant est un employé de chez Google, et désolé mais c&#8217;est de l&#8217;anglais &#8230; mais accrochez vous le discours est très interessant !</p>
<p><a href="http://www.youtube.com/watch?v=tz-Bb-D6teE">http://www.youtube.com/watch?v=tz-Bb-D6teE</a></p>
<p>Pour avoir un petit oeil critique sur son discours, il explique qu&#8217;au XIème siècle, avec nos ordinateurs de course à plusieurs coeurs et tout le savoir dont on dispose, la plupart des défauts des langages dynamiques sont gommés.</p>
<p>Le plus important de ces défaut est l&#8217;absence d&#8217;IDE permettant d&#8217;écrire plus aisément le code, et accessoirement éviter quelques sources de bugs. Les IDEs pour les langages dynamiques sont souvent réputés difficiles à écrire et peu fiables du fait de la dynamicité du code. D&#8217;après notre ami Steve Yegge, un IDE pour Python n&#8217;est pas plus difficile à écrire qu&#8217;un autre pour Java, simplement différent de par l&#8217;analyse du code.</p>
<p>Je n&#8217;ai rien à redire, ce gentil monsieur travaille chez Google et j&#8217;oserais pas le contredire à moins d&#8217;avoir un paquet d&#8217;arguments bétons&#8230; Cependant ce qui me chagrine un peu, c&#8217;est que pour moi l&#8217;avantage premier d&#8217;un langage dynamique est son côté &laquo;&nbsp;vite fait&nbsp;&raquo;. Peut-être suis-je un peu coincé mais j&#8217;ai tendance à penser que les langages Python et Ruby sont parfaits pour faire un petit script, qui fera une ou deux choses qui ne justifiaient pas de sortir l&#8217;artillerie lourde C++/Java/C#. Certes si l&#8217;on souhaite réaliser un projet complet avec un langage comme Python, Ruby, Groove, Boo, Scheme et j&#8217;en passe, evidemment un IDE complet sera le bienvenu.</p>
<p>Toutefois on peut avoir besoin d&#8217;un IDE simple, possedant les mêmes avantages de simplifité et de légèreté que les langages pour lesquels ils s&#8217;adressent. Si l&#8217;on doit sortir la même artillerie pour écrire 10 lignes de python que pour recoder le compilateur Java, alors l&#8217;interet même du langage est un peu perdu&#8230; D&#8217;où l&#8217;importance d&#8217;IDEs légers.</p>
<p>Les caractéristiques minimales d&#8217;un bon IDE pour langage dynamique seraient selon moi:</p>
<ul>
<li>Coloration syntaxique (en dessous de ça &#8230; c&#8217;est un bloc note &#8230;)</li>
<li>Indentation du code automatique (pour python &#8230; il vaut mieux&#8230;)</li>
<li>Auto-complétion (c&#8217;est quand même merveilleux cet outil !)</li>
<li>Lancement rapide (on va dire qu&#8217;il est opérationnel en moins de 5 secondes pour faire large &#8230; ça fait toujours 10 fois moins qu&#8217;eclipse !)</li>
<li>Fonctionner simplement sur un fichier, sans création d&#8217;un projet / workspace / trucbidulelong</li>
</ul>
<p>Evidemment si en cadeau on a d&#8217;autres fonctionnalités, on ne pas pas cracher dessus ! Au cas où vous seriez actuellement en train de coder un tel IDE je vous jette quelques idées en pagaille:</p>
<ul>
<li>Système de template/snippet (le truc qui permet de générer une déclaration de classe, de méthode, d&#8217;attribut, un main, &#8230;)</li>
<li>Génération de code standard à partir des informations d&#8217;une classe (constructeur, getter, setter, &#8230;)</li>
<li>Système de renommage évolué (si je renomme self.x, je peux pas renommer la variable x passée en paramètre &#8230;)</li>
<li>Pliage de code (c&#8217;est toujours pratique de replier une fonction qu&#8217;on ne retouchera plus)</li>
</ul>
<p>Personnellement je ne connais pas d&#8217;IDE satisfaisant ces conditions, surtout celle de l&#8217;auto-complétion. Pour le reste les couteaux suisses comme emacs ou notepad++ font généralement l&#8217;affaire. Si vous connaissez un tel editeur pour Python, pour Ruby ou autre, n&#8217;hésitez pas à laisser un commentaire pour en faire profiter les autres, à commencer par moi (n&#8217;oubliez pas de spécifier sur quel OS ça tourne aussi <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> )</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/taranael.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/taranael.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/taranael.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/taranael.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/taranael.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/taranael.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/taranael.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/taranael.wordpress.com/30/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=30&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://taranael.wordpress.com/2009/02/02/dynamic-languages-strike-back/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25ea5b35935ee51ddefbc70ac569158a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Pierre</media:title>
		</media:content>
	</item>
		<item>
		<title>Raccourcis clavier</title>
		<link>http://taranael.wordpress.com/2009/01/29/raccourcis-clavier/</link>
		<comments>http://taranael.wordpress.com/2009/01/29/raccourcis-clavier/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 21:30:05 +0000</pubDate>
		<dc:creator>Pierre</dc:creator>
				<category><![CDATA[Tips&Tricks]]></category>

		<guid isPermaLink="false">http://taranael.wordpress.com/?p=25</guid>
		<description><![CDATA[IMPORTANT ! Ce billet a été légèrement complété et déplacé. Vous pourrez maintenant le trouver à cette adresse, sur le site de mon WebCV: Raccourcis Clavier. Ce blog est voué à une fermeture d&#8217;ici quelques semaines, si vous êtes arrivés ici en suivant un lien, merci d&#8217;informer l&#8217;administrateur de ce changement d&#8217;adresse. Voilà un billet [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=25&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><span style="color:#ff0000;"><strong>IMPORTANT</strong></span> ! Ce billet a été légèrement complété et déplacé. Vous pourrez maintenant le trouver à cette adresse, sur le site de mon WebCV: <a title="Des raccourcis clavier" href="http://www.pierreschambacher.com/blog/raccourcis-clavier/">Raccourcis Clavier</a>.<br />
Ce blog est voué à une fermeture d&#8217;ici quelques semaines, si vous êtes arrivés ici en suivant un lien, merci d&#8217;informer l&#8217;administrateur de ce changement d&#8217;adresse.</p>
<p>Voilà un billet qui me tient à cœur et particulièrement attendu par quelques uns de mes amis &#8230; Je suis un grand fanatique des raccourcis clavier, parce que très (très) [très] &lt;très&gt; fainéant par nature&#8230; Quand je suis sur mon ordinateur, enlever une main de mon clavier pour atteindre ma souris est un effort que je préfère souvent éviter et lorsque je peux trouver un raccourci clavier qui me permettrait de m&#8217;économiser cette épreuve infernale, je suis heureux !!</p>
<p>Pour les patrons attentifs à la productivité de leurs employés, notons aussi qu&#8217;avec le temps, on va plus vite avec un raccourci clavier qu&#8217;avec sa souris, et ça a surement été prouvé scientifiquement par quelqu&#8217;un quelque part qui s&#8217;ennuyait et a décidé de faire une étude là dessus &#8230;</p>
<p>Je suis donc parti pour révéler tout un tas d&#8217;astuces cachées dans votre clavier. Evidemment ces raccourcis sont reliés aux logiciels que j&#8217;ai tendance à utiliser &#8230; si vous pensez trouver ici la nouvelle commande pour lancer un filtre sous Photoshop &#8230; passez votre chemin <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Pour l&#8217;action précise de chaque raccourci, il dépendra si vous travaillez sur un traitement de texte, d&#8217;images, un navigateur web ou dieu sait quoi.</p>
<p>Si vous ne connaissez pas certaines touches du clavier (j&#8217;ai découvert il y a peu que certains ignoraient l&#8217;éxistance des touches <em>Home</em> et <em>End</em> par exemple), voici un lien qui devrait vous être utile: <a href="http://www.pcloisirs.eu/images/Clavier_Azerty.jpg">http://www.pcloisirs.eu/images/Clavier_Azerty.jpg</a></p>
<p>Ah une petite note pour nos amis utilisateurs de Mac, la plupart de ces raccourcis fonctionnent en utilisant la touche commande à la plate de la touche contrôle. Lorsqu&#8217;un raccourci est réellement différent j&#8217;en ferais la remarque.</p>
<p><span id="more-25"></span></p>
<p><strong>Les (très) grands classiques </strong>(présents un peu partout)</p>
<ul>
<li><strong>Ctrl-A:</strong> sélectionner tout</li>
<li><strong>Ctrl-C:</strong> copier l&#8217;élément sélectionné et le placer dans le presse-papier</li>
<li><strong>Ctrl-X:</strong> couper l&#8217;élément sélectionné et le placer dans le presse-papier</li>
<li><strong>Ctrl-V:</strong> coller l&#8217;élément présent dans le presse-papier à l&#8217;emplacement du curseur</li>
</ul>
<ul>
<li><strong>Ctrl-Z:</strong> annuler la dernière action (il vous sauvera la vie plus d&#8217;une fois)</li>
<li><strong>Ctrl-Y:</strong> rééffectuée une action annulée par Ctrl-Z (des fois cette fonction est oubliée&#8230; domage !)</li>
</ul>
<ul>
<li><strong>Ctrl-F:</strong> rechercher</li>
<li><strong>Ctrl-H:</strong> rechercher et remplacer</li>
</ul>
<ul>
<li><strong>Ctrl-O:</strong> ouvrir un document</li>
<li><strong>Ctrl-N:</strong> créer un nouveau document</li>
<li><strong>Ctrl-S:</strong> sauvegarder (en général, on en fini par taper ce raccourci à chaque modification mineure)</li>
<li><strong>Ctrl-P:</strong> imprimer le document courant</li>
<li><strong>Ctrl-W:</strong> fermer le document courant (pour les onglets des navigateurs par exemple)</li>
<li><strong>Ctrl-Tab:</strong> aller au document suivant (pour les onglets des navigateurs par exemple)</li>
<li><strong>Ctrl-Shift-Tab:</strong> aller au document précédent (pour les onglets des navigateurs par exemple)</li>
</ul>
<p><strong>Les zones de texte</strong></p>
<ul>
<li><strong>Ctrl-Flèche</strong><strong> gauche</strong>: se déplacer d&#8217;un mot vers la gauche</li>
<li><strong>Ctrl-Flèche droite:</strong> se déplacer d&#8217;un mot vers la droite</li>
<li><strong>Home:</strong> retourner en début de ligne (<strong>Command-Flèche gauche</strong> sous Mac OS)</li>
<li><strong>End:</strong> aller en fin de ligne (<strong>Command-Flèche droite</strong> sous Mac OS)</li>
<li><strong>Ctrl-Home:</strong> retourner au tout début du document</li>
<li><strong>Ctrl-End:</strong> aller à la toute fin du document</li>
</ul>
<p>A noter que pour toutes ces combinaisons, une pression sur Shift simultanément permet de sélectionner le texte en fonction de la position du curseur.</p>
<p><strong>Microsoft Word (suite Office et logiciels de traitement de texte d&#8217;une façon générale)</strong></p>
<ul>
<li><strong>Ctrl-G:</strong> mettre en gras</li>
<li><strong>Ctrl-I:</strong> mettre en italique</li>
<li><strong>Ctrl-U:</strong> souligner</li>
</ul>
<ul>
<li><strong>Ctrl-Shift-G:</strong> aligner à gauche</li>
<li><strong>Ctrl-Shift-D:</strong> aligner à droite</li>
<li><strong>Ctrl-E:</strong> centrer</li>
<li><strong>Ctrl-J:</strong> justifier</li>
</ul>
<ul>
<li><strong>Shift-Enter:</strong> aller à la ligne sans nouveau paragraphe</li>
<li><strong>Ctrl-Enter:</strong> insérer un saut de ligne</li>
</ul>
<p><strong>Navigateurs Web</strong> (Chrome et Firefox vérifiés)</p>
<ul>
<li><strong>Ctrl-K:</strong> effectuer une recherche sur le moteur de recherche par défaut</li>
<li><strong>Ctrl-L:</strong> se placer dans la barre d&#8217;adresse</li>
<li><strong>Clique-Molette:</strong> cliquer avec votre molette sur un lien ouvre la page dans un nouvel onglet</li>
<li><strong>F5:</strong> rafraichir la page (Command-R sous Mac OS)</li>
</ul>
<p>La plupart des autres raccourcis ont déjà été cités (Ctrl-F, Ctrl-W, Ctrl-Tab, Ctrl-Shift-Tab, &#8230;)</p>
<p><strong>Microsoft Windows</strong></p>
<ul>
<li><strong>Windows-D:</strong> minimiser toutes les fenêtres pour atteindre le bureau</li>
<li><strong>Windows-E:</strong> ouvrir un nouvel explorateur</li>
<li><strong>Windows-L:</strong> vérrouiller l&#8217;écran de l&#8217;ordinateur (ne laissez pas votre poste de travail connecté par pitié !)</li>
<li><strong>Alt-Tab</strong> ou <strong>Windows-Tab</strong><strong>:</strong> permet de passer d&#8217;une fenêtre à une autre</li>
<li><strong>Impr Ecran:</strong> prendre une photo de l&#8217;écran, placée dans le presse-papier</li>
<li><strong>Alt-Impr Ecran:</strong> prendre une photo de la fenêtre courante, placée dans le presse-papier</li>
</ul>
<p><strong>Linux &#8211; Bureau Gnome</strong></p>
<ul>
<li><strong>Alt-F2:</strong> lancer une commande sans avoir à ouvrir de terminal</li>
<li><strong>Alt-Tab</strong> ou <strong>Windows-Tab</strong>: permet de passer d&#8217;une fenêtre à une autre</li>
</ul>
<p><strong>Mac OS X</strong></p>
<ul>
<li><strong>Ctrl-Flèche:</strong> permet de se déplacer entre ses différents bureaux sous Spaces (j&#8217;ai bien dit Ctrl et pas Command)</li>
<li><strong>Command-Shift-3: </strong>permet de prendre une capture d&#8217;écran sous Mac OS, sauvegardée sur le bureau</li>
<li><strong>Command-Shift-4:</strong> permet de sélectionner un morceau d&#8217;écran pour effectuer une capture, sauvegardée sur le bureau</li>
<li><strong>Command-Tab:</strong> permet de passer d&#8217;une fenêtre à une autre</li>
</ul>
<p>J&#8217;arrête ma liste ici, si vous pensez que j&#8217;ai oublié quelque chose d&#8217;essentiel n&#8217;hésitez pas à laisser un commentaire, de toute façon si quelque chose me vient j&#8217;éditerai le billet !</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/taranael.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/taranael.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/taranael.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/taranael.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/taranael.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/taranael.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/taranael.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/taranael.wordpress.com/25/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=25&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://taranael.wordpress.com/2009/01/29/raccourcis-clavier/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25ea5b35935ee51ddefbc70ac569158a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Pierre</media:title>
		</media:content>
	</item>
		<item>
		<title>Fiche Java</title>
		<link>http://taranael.wordpress.com/2009/01/27/fiche-java/</link>
		<comments>http://taranael.wordpress.com/2009/01/27/fiche-java/#comments</comments>
		<pubDate>Tue, 27 Jan 2009 21:09:19 +0000</pubDate>
		<dc:creator>Pierre</dc:creator>
				<category><![CDATA[Fiche langage]]></category>
		<category><![CDATA[Tips&Tricks]]></category>
		<category><![CDATA[fiche]]></category>
		<category><![CDATA[informatique]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programmation]]></category>
		<category><![CDATA[syntaxe]]></category>

		<guid isPermaLink="false">http://taranael.wordpress.com/?p=6</guid>
		<description><![CDATA[Premier langage à subir l&#8217;épreuve du feu, je ne prends pas trop de risque en me lançant dans Java que je connais relativement bien et qui présente relativement peu d&#8217;excenticités ! Attention j&#8217;ai 10 minutes pour vous avoir fait comprendre comment codez dans ce langage à vous qui coder depuis des années dans un autre [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=6&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Premier langage à subir l&#8217;épreuve du feu, je ne prends pas trop de risque en me lançant dans Java que je connais relativement bien et qui présente relativement peu d&#8217;excenticités ! Attention j&#8217;ai 10 minutes pour vous avoir fait comprendre comment codez dans ce langage à vous qui coder depuis des années dans un autre langage, <em>top chrono</em> !</p>
<p><span id="more-6"></span></p>
<p><strong>Caractéristiques de base du langage</strong></p>
<ul>
<li>Java est tout-objet, chaque variable et chaque fonction est définie à l&#8217;intérieur d&#8217;une classe (unique exception, les types de base, int, float, boolean, long, &#8230;)</li>
<li>Le langage est déclaratif, chaque variable utilisée doit être déclarée dans le champ de visibilité (scope) où elle est utilisée</li>
<li>Les variables sont typées et les casts ne sont automatiques que vers un type sans perte d&#8217;information (int vers long, classe fille vers classe mère). Une exception est une nouvelle fois faite avec le type String (chaîne de caractère) qui provoque un appel automatique de la méthode toString.</li>
<li>Il est possible d&#8217;hériter d&#8217;une seule classe (déclaration de méthode, d&#8217;attributs et de code) mais on peut implémenter plusieurs interfaces (déclaration de méthode uniquement, sans code)</li>
<li>La mémoire est gérée par la machine virtuelle sous-jacente à l&#8217;aide d&#8217;un ramasse-miette (garbage collector), mais ça ne coûte rien de l&#8217;aider en mettant vos variables inutilisées à null <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
</ul>
<p><strong>Avantages</strong></p>
<ul>
<li>Langage extrèmement utilisé actuellement (probablement le plus utilisé en développement aen ce moment) et donc particulièrement documenté</li>
<li>Il s&#8217;agit d&#8217;un langage impératif au fonctionnement relativement classique, proche d&#8217;autres outils de production tels que C++ ou C#</li>
<li>C&#8217;est un outil de développement complet destiné principalement aux entreprises, il est par conséquent possible de (presque) tout faire avec</li>
</ul>
<p><strong>Inconvénients</strong></p>
<ul>
<li>Java est un langage semi compilé et comme dit precedemment destiné à la base à l&#8217;industrie, aussi il n&#8217;est pas très pratique pour du développement bouclé en 5 minutes ou faire un petit traitement rapide, on lui préfèrera alors un langage de script (Python, Ruby, Perl, &#8230;)</li>
<li>Les instructions sont compilées vers un langage binaire destiné à être consommé par une machine virtuelle Java, spécifique à la plateforme (Win/Linux/Mac), le gain en portabilité est compensé par une perte en performance et l&#8217;inadaptation complète du langage aux tâches de bas niveau. Ne pensez pas écrire un driver ni même un système d&#8217;exploitation avec Java <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ul>
<p><strong>IDE</strong></p>
<ul>
<li>Eclipse (un peu lourd, mais c&#8217;est vraiment un outil de première qualité pour du développement Java)</li>
<li>Netbeans</li>
<li>JBuilder</li>
<li>JCreator</li>
</ul>
<p><strong>Instructions de base</strong></p>
<p><span style="text-decoration:underline;">Bloc conditionnel if</span></p>
<p><code>if (valeurBooleene) {<br />
   // Code ici<br />
}<br />
else if (autreChose) {<br />
   // Code ici<br />
}<br />
else {<br />
   // Code ici<br />
}</code></p>
<p><code>// Opérateur ternaire<br />
int a = (condition)? 123 : 321;<br />
</code></p>
<p><span style="text-decoration:underline;">Block switch</span></p>
<p><code>switch (variable) {<br />
 case 1:<br />
   // Code ici<br />
 case 2:<br />
 case 3:<br />
   // Code exécuté pour variable = 1, 2 ou 3<br />
   break;<br />
 case 'a':<br />
   // Code ici<br />
 default:<br />
   // Code ici<br />
}<br />
</code></p>
<p><span style="text-decoration:underline;">Boucles while et do while</span></p>
<p><code>while (condition) {<br />
   // Code ici<br />
}</code></p>
<p><code>do {<br />
   // Code ici<br />
} while(condition);<br />
</code></p>
<p><span style="text-decoration:underline;">Boucles for et for each</span></p>
<p><code>for (int i=0; i&lt;N; ++i) {<br />
   // Code ici<br />
}<br />
</code></p>
<p><code>for (Object value : array) { // Ici array est de type Enumerable&lt;Object&gt;<br />
   // Code ici<br />
}<br />
</code></p>
<p><span style="text-decoration:underline;">Interception des exceptions</span></p>
<p><code>try {<br />
   // Code qui risque d'exploser<br />
}<br />
catch (TypePrecisException monException) {<br />
   // Gérer ici une expression de type précis<br />
}<br />
catch (Exception exceptionGenerique) {<br />
   // Gérer ici n'importe quel autre type d'exception<br />
}<br />
// Cette clause est optionnelle evidemment<br />
finally {<br />
   // A faire dans tous les cas<br />
}<br />
</code></p>
<p><span style="text-decoration:underline;">Déclarations de classes</span></p>
<p><code>// Classe simple<br />
public class MaClasse {<br />
   // Attribut statique<br />
   public static int N = 4;<br />
   // Attribut<br />
   private int attribut;<br />
   // Constructeur<br />
   public MaClasse (int attribut) {<br />
      this.attribut = attribut;<br />
   }<br />
   // Méthode<br />
   public int getAttribut () {<br />
      return this.attribut;<br />
   }<br />
   // Méthode main, toujours la même signature<br />
   public static void main (String[] args) {<br />
      // Code ici<br />
   }<br />
} // Notez pour les programmeurs C++, pas de point virgule<br />
</code></p>
<p><code>// Classe avec héritage simple et implémentation d'interface<br />
public class AutreClasse extends MaClasse implements Serializable, Printable {<br />
   // Code ici<br />
}<br />
</code></p>
<p><code>// Définition d'une interface, héritant d'une autre interface<br />
public interface MonInterface extends AutreInterface {<br />
   // Déclaration de méthodes ici, sans code<br />
}</code></p>
<p>Si j&#8217;ai fait ça correctement ça doit faire 10 minutes que vous êtes sur cette page. En espérant que vous y voyez plus clair sur le langage Java ! Je m&#8217;apprétais à me lancer dans un autre chapitre sur quelques astuces du langage, comme l&#8217;utilisation de classes anonymes par exemple mais en fait je publierais plutôt un autre billet et je rajouterais un lien ici pour ceux que ça interesse.</p>
<p>Cette fiche a été réalisée brutalement sans prendre le temps de faire beaucoup de vérifications dans la littérature de référence, aussi si j&#8217;ai sorti une grosse connerie pensez à me prévenir je corrigerais, l&#8217;erreur est humaine <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Ah d&#8217;ailleurs à toi jeune étudiant qui pensait copier/coller tout ça dans ton rapport ou ta présentation, vas plutôt sur Wikipedia on sait jamais !</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/taranael.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/taranael.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/taranael.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/taranael.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/taranael.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/taranael.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/taranael.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/taranael.wordpress.com/6/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=6&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://taranael.wordpress.com/2009/01/27/fiche-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25ea5b35935ee51ddefbc70ac569158a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Pierre</media:title>
		</media:content>
	</item>
		<item>
		<title>Ouverture</title>
		<link>http://taranael.wordpress.com/2009/01/26/ouverture/</link>
		<comments>http://taranael.wordpress.com/2009/01/26/ouverture/#comments</comments>
		<pubDate>Mon, 26 Jan 2009 21:03:07 +0000</pubDate>
		<dc:creator>Pierre</dc:creator>
				<category><![CDATA[Blabla]]></category>

		<guid isPermaLink="false">http://taranael.wordpress.com/?p=3</guid>
		<description><![CDATA[Bonjour à tout visiteur qui viendrait se perdre ici à tout hazard. Pour me présenter très brièvement, j&#8217;ai 22 ans, je termine en ce moment même ma dernière année en école d&#8217;ingénieur en informatique dans le sud-est de la France où je devrais prochainement travailler en tant que développeur.  L&#8217;objectif de ce blog n&#8217;est pas [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=3&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Bonjour à tout visiteur qui viendrait se perdre ici à tout hazard.</p>
<p>Pour me présenter très brièvement, j&#8217;ai 22 ans, je termine en ce moment même ma dernière année en école d&#8217;ingénieur en informatique dans le sud-est de la France où je devrais prochainement travailler en tant que développeur. </p>
<p>L&#8217;objectif de ce blog n&#8217;est pas de parler de ma petite vie, sinon son avenir se résumerait à quelques jours avant de sombrer dans l&#8217;oubli&#8230; J&#8217;aimerais tout simplement utiliser ce site pour partager des informations, des découvertes faites sur le monde de l&#8217;informatique.Quelques fois je fais des recherches sur le net et je me dis &laquo;&nbsp;Bordel mais pourquoi personne n&#8217;a pensé à ça ??&nbsp;&raquo; &#8230; aussi vais-je essayer de couvrir quelques manques de la toile <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Pour commencer à combler un de ces fameux vide du web, j&#8217;envisage de publier un certain nombre de billets, chacun ciblé sur un langage de programmation. L&#8217;objectif de cette fiche est d&#8217;être opérationnel dans ce langage en moins de 10 minutes. Evidemment on ne parle pas ici d&#8217;un pur débutant qui n&#8217;a jamais programmé de sa vie, mais de quelqu&#8217;un connaissant X langages de programmation et se retrouvant à devoir écrire quelque chose dans un X+1ème langage. Rien de plus énervant quand on sait programmer des choses avancées dans un langage que de se retrouver à chercher comment faire une boucle for &#8230;&#8230;&#8230;&#8230;</p>
<p>Bien sûr ces informations se trouvent sur internet, mais rien n&#8217;est vraiment centralisé. Chaque fois que l&#8217;on se retrouve devant un langage inconnu, on est bon pour une nouvelle recherche d&#8217;un site avec les informations necessaires. En espérant juste ne pas être le seul à se retrouver devant ce genre de problème.</p>
<p>Là dessus bonne lecture.</p>
<p> </p>
<p>PS: je peux être très occupé et aussi avoir des passages à vide, ne pas s&#8217;étonner si aucun billet n&#8217;est posté pendant plusieurs jours &#8230; semaines <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/taranael.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/taranael.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/taranael.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/taranael.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/taranael.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/taranael.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/taranael.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/taranael.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=taranael.wordpress.com&amp;blog=6329804&amp;post=3&amp;subd=taranael&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://taranael.wordpress.com/2009/01/26/ouverture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25ea5b35935ee51ddefbc70ac569158a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Pierre</media:title>
		</media:content>
	</item>
	</channel>
</rss>
