<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.0.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: JavaOne 2008: Design Patterns Reconsidered</title>
	<link>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/</link>
	<description>Alex Miller's technical blog</description>
	<pubDate>Thu, 08 Jan 2009 23:46:44 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.2</generator>

	<item>
		<title>by: Stefan Schulz</title>
		<link>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60636</link>
		<pubDate>Mon, 30 Jun 2008 19:03:44 +0000</pubDate>
		<guid>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60636</guid>
					<description>Thanks for that talk. Enjoyed it a lot.</description>
		<content:encoded><![CDATA[<p>Thanks for that talk. Enjoyed it a lot.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Alex</title>
		<link>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60623</link>
		<pubDate>Mon, 30 Jun 2008 17:54:25 +0000</pubDate>
		<guid>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60623</guid>
					<description>If you're referring to the section on Proxy in slides 28-35, then you won't find audio because I skipped that section during the talk.  I wasn't sure how fast I was going to be speaking but suspected that the 8 minutes or so of that section might need to be skipped to pare it down and indeed that was necessary to hit the 50 minute time box.  That's why the No Fluff conference sessions are so much nicer at 90 minutes - you can really get into significantly more depth in a single session.</description>
		<content:encoded><![CDATA[<p>If you&#8217;re referring to the section on Proxy in slides 28-35, then you won&#8217;t find audio because I skipped that section during the talk.  I wasn&#8217;t sure how fast I was going to be speaking but suspected that the 8 minutes or so of that section might need to be skipped to pare it down and indeed that was necessary to hit the 50 minute time box.  That&#8217;s why the No Fluff conference sessions are so much nicer at 90 minutes - you can really get into significantly more depth in a single session.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: David Karnok</title>
		<link>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60611</link>
		<pubDate>Mon, 30 Jun 2008 16:48:52 +0000</pubDate>
		<guid>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60611</guid>
					<description>A dozes slides between page 23-35 in the watch section have missing audio. How far is this region in the MP3?</description>
		<content:encoded><![CDATA[<p>A dozes slides between page 23-35 in the watch section have missing audio. How far is this region in the MP3?
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Alex</title>
		<link>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60580</link>
		<pubDate>Mon, 30 Jun 2008 14:26:38 +0000</pubDate>
		<guid>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60580</guid>
					<description>@Casper: Ah, gotcha.  ServiceLoader fills the same &quot;discovery&quot; gap that OSGi does - the ability to know what classes implement an interface in your available classes.  I don't think ServiceLoader is well known or used yet.</description>
		<content:encoded><![CDATA[<p>@Casper: Ah, gotcha.  ServiceLoader fills the same &#8220;discovery&#8221; gap that OSGi does - the ability to know what classes implement an interface in your available classes.  I don&#8217;t think ServiceLoader is well known or used yet.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Casper Bang</title>
		<link>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60577</link>
		<pubDate>Mon, 30 Jun 2008 14:11:01 +0000</pubDate>
		<guid>http://tech.puredanger.com/2008/06/29/javaone-2008-design-patterns-reconsidered/#comment-60577</guid>
					<description>@Alex: No I mean writing to an SPI (service provider pattern) rather than an API by using java.util.ServiceLoader (javax.imageio.spi.ServiceRegistry if on JRE1.4.2).

It's basically just another manifestation of &quot;program to an interface&quot;, the difference being that you can place the contract in one JAR and implementations in other and have Java discover/plug-in the implementation at run-time.

I use it a lot to decouple dependencies between subsystems in a double-dispatch fashion as well as for singleton mock purposes. I am surprised this approach is not used more often, though I believe NetBeans/OpenIDE uses it (or variations of it) pervasively.</description>
		<content:encoded><![CDATA[<p>@Alex: No I mean writing to an SPI (service provider pattern) rather than an API by using java.util.ServiceLoader (javax.imageio.spi.ServiceRegistry if on JRE1.4.2).</p>
<p>It&#8217;s basically just another manifestation of &#8220;program to an interface&#8221;, the difference being that you can place the contract in one JAR and implementations in other and have Java discover/plug-in the implementation at run-time.</p>
<p>I use it a lot to decouple dependencies between subsystems in a double-dispatch fashion as well as for singleton mock purposes. I am surprised this approach is not used more often, though I believe NetBeans/OpenIDE uses it (or variations of it) pervasively.
</p>
]]></content:encoded>
				</item>
</channel>
</rss>
