<?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>Comments on: Object-Oriented Programming Concepts in Java, Explained with D&amp;D</title>
	<atom:link href="http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/feed" rel="self" type="application/rss+xml" />
	<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd</link>
	<description>A must-read Dungeons &#38; Dragons blog for dungeon masters, D&#38;D players and game designers.</description>
	<lastBuildDate>Fri, 30 Jul 2010 18:34:31 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Aliza</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-79576</link>
		<dc:creator>Aliza</dc:creator>
		<pubDate>Thu, 17 Dec 2009 00:05:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-79576</guid>
		<description>Um, you picked a bad example -- if &quot;vampire&quot; and &quot;humanoid&quot; contain mutually exclusive attributes, then &quot;humanoid&quot; and &quot;undead&quot; have been implemented wrong, since a vampire dragon and a vampire human still retain certain features of their original type.</description>
		<content:encoded><![CDATA[<p>Um, you picked a bad example &#8212; if &#8220;vampire&#8221; and &#8220;humanoid&#8221; contain mutually exclusive attributes, then &#8220;humanoid&#8221; and &#8220;undead&#8221; have been implemented wrong, since a vampire dragon and a vampire human still retain certain features of their original type.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CurtainDog</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-71767</link>
		<dc:creator>CurtainDog</dc:creator>
		<pubDate>Sat, 18 Jul 2009 04:41:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-71767</guid>
		<description>@Andy - you&#039;re breaking the rules of the game. There ain&#039;t no such concept as an IElf - that should be your red-light that your model is wrong.

@prgmrgirl - the state pattern is what you want. There&#039;s no reason to treat race as an immutable, think Polymorph* spells. It also makes it trivial to create arbitary combinations of two or more races, and also handles transforms into zombie or lich forms.

@OP - sort of but not quite. Think about the information you put a character sheet. Everything you fill in is a variable. Note that this includes the race of the character, i.e. race is just a field in the character object.</description>
		<content:encoded><![CDATA[<p>@Andy &#8211; you&#8217;re breaking the rules of the game. There ain&#8217;t no such concept as an IElf &#8211; that should be your red-light that your model is wrong.</p>
<p>@prgmrgirl &#8211; the state pattern is what you want. There&#8217;s no reason to treat race as an immutable, think Polymorph* spells. It also makes it trivial to create arbitary combinations of two or more races, and also handles transforms into zombie or lich forms.</p>
<p>@OP &#8211; sort of but not quite. Think about the information you put a character sheet. Everything you fill in is a variable. Note that this includes the race of the character, i.e. race is just a field in the character object.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: What Role Playing Games Can Teach You About Business &#171; Charleen&#8217;s Chateau</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-71582</link>
		<dc:creator>What Role Playing Games Can Teach You About Business &#171; Charleen&#8217;s Chateau</dc:creator>
		<pubDate>Tue, 14 Jul 2009 18:02:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-71582</guid>
		<description>[...] led to further links like Everything I Know I&#8217;ve Learnt (sic) From D&amp;D and Object-Oriented Programming Concepts in Java, Explained with D&amp;D &#8211; of which that latter one will prove VERY useful in about a month when I start my Java [...]</description>
		<content:encoded><![CDATA[<p>[...] led to further links like Everything I Know I&#8217;ve Learnt (sic) From D&amp;D and Object-Oriented Programming Concepts in Java, Explained with D&amp;D &#8211; of which that latter one will prove VERY useful in about a month when I start my Java [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: prgmrgirl</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-56652</link>
		<dc:creator>prgmrgirl</dc:creator>
		<pubDate>Tue, 30 Sep 2008 15:52:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-56652</guid>
		<description>That&#039;s just too awesome!  Gratz on grabbing onto the concepts!  I&#039;m working on creating a character generator as a way of honing my OOD skills.  I have to agree with Andy: you&#039;d end up with literally hundreds of classes.  I&#039;m currently looking at the Decorator or Factory pattern to see if those might be a better way to go.</description>
		<content:encoded><![CDATA[<p>That&#8217;s just too awesome!  Gratz on grabbing onto the concepts!  I&#8217;m working on creating a character generator as a way of honing my OOD skills.  I have to agree with Andy: you&#8217;d end up with literally hundreds of classes.  I&#8217;m currently looking at the Decorator or Factory pattern to see if those might be a better way to go.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-49141</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Wed, 09 Jul 2008 15:04:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-49141</guid>
		<description>Not until you realize that Elf should just be a particular instance of the Race class</description>
		<content:encoded><![CDATA[<p>Not until you realize that Elf should just be a particular instance of the Race class</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andy</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-45583</link>
		<dc:creator>Andy</dc:creator>
		<pubDate>Mon, 19 May 2008 19:03:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-45583</guid>
		<description>Elf (and Half Elf) should both implement the interface IElf. Drow implements it by inheriting Elf, and Half Elves must implement it themselves. Thus, a sword that works only for an Elf is in fact usable only by an object that implements IElf.

just as Dwarves should implement IDwarf, etc etc. This allows proper extension and flexibility.

it all breaks apart when you realise that you have to create a new class for every combination of templates you&#039;re using.

Java fails, try Lua or Perl.</description>
		<content:encoded><![CDATA[<p>Elf (and Half Elf) should both implement the interface IElf. Drow implements it by inheriting Elf, and Half Elves must implement it themselves. Thus, a sword that works only for an Elf is in fact usable only by an object that implements IElf.</p>
<p>just as Dwarves should implement IDwarf, etc etc. This allows proper extension and flexibility.</p>
<p>it all breaks apart when you realise that you have to create a new class for every combination of templates you&#8217;re using.</p>
<p>Java fails, try Lua or Perl.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sandrinnad</title>
		<link>http://www.d20source.com/2006/12/object-oriented-programming-concepts-in-java-explained-with-dd/comment-page-1#comment-34232</link>
		<dc:creator>Sandrinnad</dc:creator>
		<pubDate>Mon, 21 Jan 2008 07:11:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.jonnydigital.com/d20/2005/12/object-oriented-programming-concepts-in-java-explained-with-dd#comment-34232</guid>
		<description>So by playing with D&amp;D I&#039;m actually refreshing my OOP skills....

Excellent!</description>
		<content:encoded><![CDATA[<p>So by playing with D&amp;D I&#8217;m actually refreshing my OOP skills&#8230;.</p>
<p>Excellent!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
