<?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>A la Poursuite du Code en Rouge &#187; POJO</title>
	<atom:link href="http://www.schwinl.net/tag/pojo/feed" rel="self" type="application/rss+xml" />
	<link>http://www.schwinl.net</link>
	<description>Le blog de Guillaume Rams sur le génie logiciel</description>
	<lastBuildDate>Thu, 02 Feb 2012 20:43:34 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Dessine-moi un POJO&#8230;</title>
		<link>http://www.schwinl.net/articles/dessine-moi-un-pojo</link>
		<comments>http://www.schwinl.net/articles/dessine-moi-un-pojo#comments</comments>
		<pubDate>Thu, 12 Feb 2009 22:56:14 +0000</pubDate>
		<dc:creator>Guillaume</dc:creator>
				<category><![CDATA[Génie Logiciel]]></category>
		<category><![CDATA[Sauf cross-post]]></category>
		<category><![CDATA[Définition]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[POJO]]></category>

		<guid isPermaLink="false">http://www.schwinl.net/?p=138</guid>
		<description><![CDATA[Lu dans la doc d&#8217;un framework : &#171;&#160;un CouteauDeTable est une classe Java standard (ou POJO) qui sert à couper viande ou légume. Il doit sous-classer AbstractCouteau, n&#8217;utiliser dans ses signatures que les types Lame et Manche, avoir un constructeur comme ceci et des attributs comme cela. Et son nom doit finir par CouteauImpl.&#160;&#187; C&#8217;est-à-dire, [...]]]></description>
			<content:encoded><![CDATA[<p>Lu dans la doc d&#8217;un framework : &laquo;&nbsp;un CouteauDeTable est une classe Java standard (ou POJO) qui sert à couper viande ou légume. Il doit sous-classer AbstractCouteau, n&#8217;utiliser dans ses signatures que les types Lame et Manche, avoir un constructeur comme ceci et des attributs comme cela. Et son nom doit finir par CouteauImpl.&nbsp;&raquo; <img src='http://www.schwinl.net/wp-content/plugins/tango-smileys-extended/tango24/bug-eyes.png' alt='Eek!' title='Eek!' class='tse-smiley' height='24' width='24' /> C&#8217;est-à-dire, tout SAUF un POJO :ermm: !</p>
<p>Ce terme est de plus en plus utilisé comme synonyme de &laquo;&nbsp;classe Java&nbsp;&raquo;, ce qui est une erreur. Alors, qu&#8217;est-ce qu&#8217;un <a href="http://www.martinfowler.com/bliki/POJO.html">POJO</a> au juste ? Et bien, ma définition en serait : <strong>une classe Java sans contraintes particulières</strong>.</p>
<p>En fait, il n&#8217;y a pas de POJO sans framework. Un framework peut vous demander de sous-classer telle ou telle classe, respecter telle convention de nommage, limiter ci, imposer cela. A l&#8217;opposé (et un peu en réaction aux EJB), on parle de POJO quand le framework justement n&#8217;impose rien sur vos classes Java : vous développez old-school, classes et interfaces sont conçues librement.</p>
<p>Exemple de framework pas-POJO-du-tout :</p>
<p>&laquo;&nbsp;Sous-classez com.framework.AbstractPrintableObject, avec un constructeur public à un paramètre de type com.framework.PrintEnvironment. Ne définissez que des méthodes publiques non synchronisées qui lèvent comme exceptions des sous-classes de com.framework.PrintException. etc&#8230; etc&#8230;&nbsp;&raquo;</p>
<p>Le même, façon j&#8217;aime-les-POJO :</p>
<p>&laquo;&nbsp;Passez-lui un POJO, le framework d&#8217;impression essaiera de découvrir ses getters publics et de construire une représentation textuelle imprimable.&nbsp;&raquo;</p>
<p>Je précise que j&#8217;écris ça dans un souci d&#8217;illustration, loin de moi l&#8217;idée de suggérer une quelconque supériorité d&#8217;une approche tout-POJO par rapport au framework de grand-papa qui offre un lot de superclasses abstraites. Par exemple, je trouve l&#8217;approche &laquo;&nbsp;pur-POJOs (ah oui, plus plein d&#8217;annotations)&nbsp;&raquo; un peu hypocrite&#8230; :whistle:</p>
]]></content:encoded>
			<wfw:commentRss>http://www.schwinl.net/articles/dessine-moi-un-pojo/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

