<?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>Commentaires sur : Guide pour la gestion des exceptions</title>
	<atom:link href="http://www.juliencarnelos.com/2006/08/30/guide-pour-la-gestion-des-exceptions/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.juliencarnelos.com/2006/08/30/guide-pour-la-gestion-des-exceptions/</link>
	<description>JEE , .NET , SOA , Conseil</description>
	<lastBuildDate>Wed, 30 Jun 2010 13:40:41 +0200</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Par : Eric</title>
		<link>http://www.juliencarnelos.com/2006/08/30/guide-pour-la-gestion-des-exceptions/comment-page-1/#comment-134</link>
		<dc:creator>Eric</dc:creator>
		<pubDate>Fri, 01 Sep 2006 06:42:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.juliencarnelos.com/2006/08/30/guide-pour-la-gestion-des-exceptions/#comment-134</guid>
		<description>&lt;p&gt;C&#039;est un post tout-à-fait pertinent tant on se rend compte que c&#039;est géré &quot;aléatoirement&quot; dans les projets.&lt;br /&gt; Je pense que tu te poses les bonnes questions et tu y réponds bien.&lt;br /&gt; Les exceptions me servent effectivement à arrêter l&#039;éxécution d&#039;un programme lorque le problème rencontré est fatal pour l&#039;algorithme en cours.&lt;br /&gt; Tu cites le bloc &#039;finally&#039; sans en parler, je ne sais pas s&#039;il existe dans le monde .Net. En gros, il permet d&#039;éviter les problèmes d&#039;incohérence des objets en mémoire dont tu parles pour rétablir l&#039;état de ces objets à un état stable. Ca peut être rendre un objet null, le reconstruire ou se deconnecter d&#039;une ressource en fermant un flux par exemple (on peut se trouver face à un lock du sytème d&#039;exploitation si le flux ouvert sur un fichier n&#039;est pas fermé).&lt;br /&gt; Je pense qu&#039;il est aussi important de faire la distinction entre exception technique et exception métier. En effet, on pense souvent à la séparation des couches du cas nominal (couche technique séparé du code métier qui devrait être le plus isolé techniquement possible) alors que la gestion des exception peut mélanger ces traitements de cas d&#039;erreur (du traitement d&#039;exception technique dans du métier par exemple). Mais je pense que c&#039;est un peu du chipotage...&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>C&#8217;est un post tout-à-fait pertinent tant on se rend compte que c&#8217;est géré &quot;aléatoirement&quot; dans les projets.<br />
 Je pense que tu te poses les bonnes questions et tu y réponds bien.<br />
 Les exceptions me servent effectivement à arrêter l&#8217;éxécution d&#8217;un programme lorque le problème rencontré est fatal pour l&#8217;algorithme en cours.<br />
 Tu cites le bloc &#8216;finally&#8217; sans en parler, je ne sais pas s&#8217;il existe dans le monde .Net. En gros, il permet d&#8217;éviter les problèmes d&#8217;incohérence des objets en mémoire dont tu parles pour rétablir l&#8217;état de ces objets à un état stable. Ca peut être rendre un objet null, le reconstruire ou se deconnecter d&#8217;une ressource en fermant un flux par exemple (on peut se trouver face à un lock du sytème d&#8217;exploitation si le flux ouvert sur un fichier n&#8217;est pas fermé).<br />
 Je pense qu&#8217;il est aussi important de faire la distinction entre exception technique et exception métier. En effet, on pense souvent à la séparation des couches du cas nominal (couche technique séparé du code métier qui devrait être le plus isolé techniquement possible) alors que la gestion des exception peut mélanger ces traitements de cas d&#8217;erreur (du traitement d&#8217;exception technique dans du métier par exemple). Mais je pense que c&#8217;est un peu du chipotage&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>

