<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">

			<channel>
			<title>Coder&apos;s Revolution - Object Oriented Design (OOP)</title>
			<link>http://www.codersrevolution.com/index.cfm</link>
			<description>Following RIA&apos;s, Adobe products, and coding in general.</description>
			<language>en-us</language>
			<pubDate>Thu, 02 Sep 2010 17:33:44 -0500</pubDate>
			<lastBuildDate>Thu, 03 Dec 2009 16:58:00 -0500</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>brad@codersrevolution.com</managingEditor>
			<webMaster>brad@codersrevolution.com</webMaster>
			<itunes:subtitle></itunes:subtitle>
			<itunes:summary></itunes:summary>
			<itunes:category text="Technology" />
			<itunes:category text="Technology">
				<itunes:category text="Podcasting" />
			</itunes:category>
			<itunes:category text="Technology">
				<itunes:category text="Tech News" />
			</itunes:category>
			<itunes:keywords></itunes:keywords>
			<itunes:author></itunes:author>
			<itunes:owner>
				<itunes:email>brad@codersrevolution.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			
			<itunes:explicit>no</itunes:explicit>
			
			
			
			
			
			<item>
				<title>BlogCFC Code Formatting Not Thread Safe (With Example)</title>
				<link>http://www.codersrevolution.com/index.cfm/2009/12/3/BlogCFC-Code-Formatting-Not-Thread-Safe-With-Example</link>
				<description>
				
				I found an interesting little bug in the &lt;a href=&quot;http://blogcfc.riaforge.org/&quot; target=&quot;_new&quot;&gt;BlogCFC&lt;/a&gt; implementation of &lt;a href=&quot;http://coldfish.riaforge.org/&quot; target=&quot;_new&quot;&gt;ColdFISH&lt;/a&gt; today.  ColdFISH is a ColdFusion code formatting component that is instantiated once and cached as a singleton in the application scope in BlogCFC.  The problem is, ColdFISH looks like it wasn&apos;t intended to be used as a singleton.  It makes use of the variables scope to store the Java StringBuffer class it uses to gather up your formatted code as well as a number of other variables used to parse the code it is formatting.  This means when two or more people hit a BlogCFC entry with larger code samples, race conditions exists.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Performance</category>				
				
				<category>Security</category>				
				
				<category>ColdFusion</category>				
				
				<category>ColdBox</category>				
				
				<pubDate>Thu, 03 Dec 2009 16:58:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2009/12/3/BlogCFC-Code-Formatting-Not-Thread-Safe-With-Example</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>MVC Question:  What Should The Controller Pass The View?</title>
				<link>http://www.codersrevolution.com/index.cfm/2009/9/5/MVC-Question--What-Should-The-Controller-Pass-The-View</link>
				<description>
				
				I think the bane of development planning can be those conversations where you personify your framework and start debating about what a service should &quot;know&quot;, whose &quot;job&quot; a particular operation is, or what the handler should &quot;care&quot; about.  This is one of those sort of questions, but I&apos;ll keep it brief since I&apos;m more interested in your opinions than my ramblings.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>MVC</category>				
				
				<category>Ajax</category>				
				
				<category>ColdFusion</category>				
				
				<category>ColdBox</category>				
				
				<category>Flex</category>				
				
				<category>Flash</category>				
				
				<category>IBO</category>				
				
				<category>ActionScript</category>				
				
				<pubDate>Sat, 05 Sep 2009 00:08:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2009/9/5/MVC-Question--What-Should-The-Controller-Pass-The-View</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Should Optional Method Parameters Be Defaulted To Blank, Or Left Undefined?</title>
				<link>http://www.codersrevolution.com/index.cfm/2009/5/30/Should-Optional-Method-Parameters-Be-Defaulted-To-Blank-Or-Left-Undefined</link>
				<description>
				
				Today I offer you a question of preference.  Should optional method parameters be defaulted to blank and assumed to exist, or should they only be defined if you intend to use them?  

In the name of code reusability I will find myself writing generic service methods such as userService.loadUser() which have a large list of optional parameters such as lastName, firstName, userName, companyID, userID, password etc. I will reuse this method any time I want to load a user or a list of users.  The question is this:  is it more correct to default all of the arguments or check for their existence?
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Sat, 30 May 2009 22:51:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2009/5/30/Should-Optional-Method-Parameters-Be-Defaulted-To-Blank-Or-Left-Undefined</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>CF 9 new cfscript syntax</title>
				<link>http://www.codersrevolution.com/index.cfm/2009/2/5/CF-9-new-cfscript-syntax</link>
				<description>
				
				A couple days ago &lt;a href=&quot;http://www.coldfusionjedi.com/index.cfm/2009/2/3/This-is-ColdFusion--this-is-ColdFusion-100-in-Script-on-Bolt&quot; target=&quot;_new&quot;&gt;Ray posted&lt;/a&gt; a screen shot from &lt;a href=&quot;http://www.adrocknaphobia.com/&quot; target=&quot;_new&quot;&gt;Adam L&lt;/a&gt; showing some new cfscript syntax in Bolt.  I personally am excited about it.  I certainly don&apos;t use cfscript for everything I code, but I definitely have gotten to the point where all my business logic is in cfscript.  I just think it is cleaner.  I have some questions of my own out the new Centaur syntax though.  Here is my best stab at what the code in the screen shot looked like:
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Centuar</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Thu, 05 Feb 2009 00:08:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2009/2/5/CF-9-new-cfscript-syntax</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>New Centuar Features Demoed! ORM, Bolt (IDE), Code Generation, CFScript</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/11/21/New-Centuar-Features-Demoed-ORM-Bolt-IDE-Code-Generation-CFScript</link>
				<description>
				
				I just got out of a session with Jason Delmore talking about some of the new features being looked at in ColdFusion 9.  He mostly talked about the ORM features being baked into the next version of ColdFusion courtesy of Hibernate.  We also squeezed a few other tidbits of information out of him too.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Performance</category>				
				
				<category>Max</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Fri, 21 Nov 2008 04:27:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/11/21/New-Centuar-Features-Demoed-ORM-Bolt-IDE-Code-Generation-CFScript</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>LightWire, Constructor Injection, And Inheritance</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/11/8/LightWire-Constructor-Injection-And-Inheritance</link>
				<description>
				
				As we push ahead with our app using ColdBox and LightWire, we have been configuring our Dependency Injection as we go.  DI is one of those things I&apos;m pretty certain I see the benefit to, but I&apos;m not sure how sold on it I am.  At this point, we may only have 50 to 60 CFCs so perhaps we&apos;re just not deep enough in to see the real profit yet.  The only real advantage I&apos;ve seen to date is having all of our dependencies spelled out in one configuration file (with the exception of the stuff you are auto-wiring).  Other than that, I don&apos;t know that I have really saved any code.  That being said, I don&apos;t have any circular dependencies, and my dependency levels don&apos;t get much more than 2 or 3 levels deep right now so maybe I just need to be patient.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>LightWire</category>				
				
				<category>ColdFusion</category>				
				
				<category>ColdBox</category>				
				
				<pubDate>Sat, 08 Nov 2008 10:29:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/11/8/LightWire-Constructor-Injection-And-Inheritance</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>ActionScript Implicit Getters And Setters Are Growing On Me</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/11/6/ActionScript-Implicit-Getters-And-Setters-Are-Growing-On-Me</link>
				<description>
				
				Here&apos;s a little tidbit that will be old-hat to any Flex/Flash people out there, but as a CF guy, I found it pretty interesting.  Most ColdFusion programmers have probably heard of implicit getters and setters as a pattern &lt;a href=&quot;http://www.pbell.com/index.cfm/2008/4/8/Generic-Getters&quot; target=&quot;_new&quot;&gt;some have adopted&lt;/a&gt; in CFML (and others seem to vehemently oppose).  While learning Flex, I have found that ActionScript 3 also supports implicit getting and setting but it means something completely different that what I had expected.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Flex</category>				
				
				<category>Flash</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Thu, 06 Nov 2008 11:09:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/11/6/ActionScript-Implicit-Getters-And-Setters-Are-Growing-On-Me</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Do You Know Your OO Acronyms?</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/11/1/Do-You-Know-Your-OO-Acronyms</link>
				<description>
				
				Lately I&apos;ve noticed how impossible it is to talk about Object Oriented Programming without peppering your conversations with scholarly-sounding acronyms.  I don&apos;t know if we programmers just like to sound smart or if we see it as part of a special club of sorts.  As my good friend Anonymous once said, &quot;If it is Computer Oriented and if it doesn&apos;t have an Acronym, then it doesn&apos;t exist&quot;  That being said, here is a list I comprised of acronyms that are related to OO or have come up recently in blogs about OO.  See how many you can identify, and comment with any additional ones you think of.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>General</category>				
				
				<category>Technology</category>				
				
				<pubDate>Sat, 01 Nov 2008 07:15:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/11/1/Do-You-Know-Your-OO-Acronyms</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Design Patterns And Framework We&apos;ve Chosen: ColdBox, DI, and IBO</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/10/31/Design-Patterns-and-Framework-Weve-Chosen-ColdBox-DI-and-IBO</link>
				<description>
				
				Christine and I, having settled into our new jobs, are rolling up our sleeves to dig in and start some hardcore re-factoring.  The legacy applications we are dealing with run smoothly and quickly for the most part, but are teetering on the edge of being un-maintainable.  They suffer from the standard trademarks of any legacy code which has seen many programmers over the years-- lack of code reuse, absent standards, poorly normalized data structures, and minimal separation of view, business, and data.  Don&apos;t think I&apos;m knocking it too hard though.  It&apos;s probably not much different than a lot of the code bases out there. We believe it can be better though.  Easier to maintain, understand, and extend.  Enter our plan for world domination...
				 [More]
				</description>
						
				
				<category>AS400</category>				
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Fri, 31 Oct 2008 11:21:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/10/31/Design-Patterns-and-Framework-Weve-Chosen-ColdBox-DI-and-IBO</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Flex Has Forced Me To Think Differently About My Code</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/10/4/Flex-Has-Forced-Me-To-Think-Differently-About-My-Code</link>
				<description>
				
				I have been enjoying my dip into Flex so far.  Sometimes you don&apos;t notice habits until you have to change them.  One rut I&apos;ve gotten into over the years is the procedural way web-based apps have gotten be thinking about programming.
				 [More]
				</description>
						
				
				<category>ActionScript</category>				
				
				<category>Flex</category>				
				
				<category>Flash</category>				
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Sat, 04 Oct 2008 13:40:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/10/4/Flex-Has-Forced-Me-To-Think-Differently-About-My-Code</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>ColdFusion&apos;s Object Instantiation Penalty: How Bad Is It?</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/9/22/ColdFusions-Object-Instantiation-Penalty-How-Bad-Is-It</link>
				<description>
				
				There has been a lot of talk recently about &lt;a href=&quot;http://www.remotesynthesis.com/post.cfm/cfargument-the-iterating-business-object&quot; target=&quot;_new&quot;&gt;design patterns&lt;/a&gt; aimed at circumventing the overhead ColdFusion imposes upon us when creating CFCs.  I&apos;m not sure who coined the term &quot;Object Instantiation Penalty&quot;, but the first reference to it I can find in the CF community was over at the &lt;a href=&quot;http://www.harelmalka.com/?p=72&quot; target=&quot;_new&quot;&gt;Dot Matrix blog&lt;/a&gt;.  Everyone seems to agree that object creation in ColdFusion leaves something to be desired, but I haven&apos;t seen anyone really quantify the price yet.  I decided some line charts were in order.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Performance</category>				
				
				<category>ColdFusion</category>				
				
				<category>Java</category>				
				
				<pubDate>Mon, 22 Sep 2008 06:58:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/9/22/ColdFusions-Object-Instantiation-Penalty-How-Bad-Is-It</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Synthesized Objects</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/9/20/Synthesized-Objects</link>
				<description>
				
				The other day I was writing a wrapper CFC to consume a web service, and return the results.  Several of the web services&apos; method returned arrays of structs and I was in the mood to experiment, so I decided to have my CFC present the data back as an array of components.  I knew that there would really never be more than 20 or 30 objects coming back so the cost of object instantiation wouldn&apos;t be a big deal.  There were 7 different &quot;types&quot; of objects coming back in the various method containing mostly strings and an occasional binary image.  I didn&apos;t want to do all the typing so I decided to toy with Object Synthesization similar to what Peter Bell has been talking about.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Sat, 20 Sep 2008 11:12:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/9/20/Synthesized-Objects</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>OO Design Patterns and IBO</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/9/10/OO-Design-Patterns-and-IBO</link>
				<description>
				
				If you missed it, Jeff Chastain put up a very &lt;a href=&quot;http://alagad.com/go/blog-entry/ibo-a-coldfusion-design-pattern&quot; target=&quot;_new&quot;&gt;interesting post&lt;/a&gt; over at Alagad&apos;s Blog.  Also good was the &quot;spirited&quot; discussion that followed between Barney and Peter Bell.  I don&apos;t know how I feel about all of it, but the entire thing is very fascinating.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Java</category>				
				
				<category>JavaScript</category>				
				
				<category>ColdFusion</category>				
				
				<category>Ajax</category>				
				
				<category>Technology</category>				
				
				<pubDate>Wed, 10 Sep 2008 16:29:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/9/10/OO-Design-Patterns-and-IBO</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Does OOP Encourage RBAR?</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/8/16/Does-OOP-Encourage-RBAR</link>
				<description>
				
				I&apos;ve been staring at my computer monitor trying start this paragraph for about 10 minutes now, so I&apos;m just going to start typing.  I&apos;ve been thinking about system design.  Organization versus performance.  Design patterns versus efficiency.  We adopt some code without thought to its performance because we&apos;re talking about milliseconds, and the readability, organization, and structure gains our apps enjoy are well worth it.  I&apos;m not sure that is always the case though, and we don&apos;t notice it until too late.
				 [More]
				</description>
						
				
				<category>SQL</category>				
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>Performance</category>				
				
				<category>ColdFusion</category>				
				
				<category>Java</category>				
				
				<pubDate>Sat, 16 Aug 2008 20:56:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/8/16/Does-OOP-Encourage-RBAR</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Tower of Babel: Where did all the languages come from?</title>
				<link>http://www.codersrevolution.com/index.cfm/2008/8/3/Tower-of-Babel-Where-did-all-the-languages-come-from</link>
				<description>
				
				In the beginning was assembly, and it was with the programmer and it was good.  Through it all programs that have been made were written, without it no programs were written.  The compiler shines in the darkness, but the darkness has not understood it.  Then came a design pattern sent by Alan Kay, its name was OOP.

The other day, someone asked me a really dumb question.  &quot;Why are there so many programming languages?  Why don&apos;t you just all use one?&quot;  Ok, that was two questions, and they aren&apos;t really dumb, but I felt kinda&apos; dumb trying to answer them.
				 [More]
				</description>
						
				
				<category>Object Oriented Design (OOP)</category>				
				
				<category>General</category>				
				
				<category>Technology</category>				
				
				<pubDate>Sun, 03 Aug 2008 01:34:00 -0500</pubDate>
				<guid>http://www.codersrevolution.com/index.cfm/2008/8/3/Tower-of-Babel-Where-did-all-the-languages-come-from</guid>
				
				
			</item>
			
		 	
			</channel></rss>