<?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"
	>
<channel>
	<title>Comments on: Why Regions are Fugly</title>
	<atom:link href="http://laribee.com/blog/2007/07/22/why-regions-are-fugly/feed/" rel="self" type="application/rss+xml" />
	<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/</link>
	<description>Coaching, Process, Design, Speculation</description>
	<pubDate>Sat, 22 Nov 2008 05:33:28 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>By: Commonality</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-23463</link>
		<dc:creator>Commonality</dc:creator>
		<pubDate>Mon, 30 Jul 2007 13:41:34 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-23463</guid>
		<description>&lt;strong&gt;Regions and Readability...&lt;/strong&gt;

...</description>
		<content:encoded><![CDATA[<p><strong>Regions and Readability&#8230;</strong></p>
<p>&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22740</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Fri, 27 Jul 2007 07:58:24 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22740</guid>
		<description>@Mat - How is that contradictory? I prefer things in plain view. As far as the super IDE goes... I want one!

@LosManos - For these GUI classes I like MVP. In the view I too like the "WireHandlers" (or similar) method. I use anonymous delegates where possible that generally call right back into the Presenter. Easy to read.</description>
		<content:encoded><![CDATA[<p>@Mat - How is that contradictory? I prefer things in plain view. As far as the super IDE goes&#8230; I want one!</p>
<p>@LosManos - For these GUI classes I like MVP. In the view I too like the &#8220;WireHandlers&#8221; (or similar) method. I use anonymous delegates where possible that generally call right back into the Presenter. Easy to read.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mat Hobbs</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22709</link>
		<dc:creator>Mat Hobbs</dc:creator>
		<pubDate>Fri, 27 Jul 2007 04:47:04 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22709</guid>
		<description>Until we get some super IDE that auto-magically and reversibly organizes code in some wonderous display (markup for code?), we will have to live with manual orderings and arrangements of code.

I don't get you how rip regions but say: "Just stack them in order and you won’t need regions. Put things in plain view!" sounds like you're contradicting yourself!

Most classes are small, but some are big, that's life.  Sometimes a module is... a module.</description>
		<content:encoded><![CDATA[<p>Until we get some super IDE that auto-magically and reversibly organizes code in some wonderous display (markup for code?), we will have to live with manual orderings and arrangements of code.</p>
<p>I don&#8217;t get you how rip regions but say: &#8220;Just stack them in order and you won’t need regions. Put things in plain view!&#8221; sounds like you&#8217;re contradicting yourself!</p>
<p>Most classes are small, but some are big, that&#8217;s life.  Sometimes a module is&#8230; a module.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: LosManos</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22649</link>
		<dc:creator>LosManos</dc:creator>
		<pubDate>Thu, 26 Jul 2007 18:22:43 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22649</guid>
		<description>hejdig.

Especially working close to the user interface classes tend to get big.  At least one method per user action, and user actions are plenty in a GUI.

During my years pretending to work I haved found out that a "form class" contains several parts where one is the event sink where all events from the surrounding world is caught.  This region I call "Event handlers" or "Event sinks".
( Yes, I have names for the others to but that is out of scope. )

I have two solutions (besides inventing some fancy class relation-inheritance-interface-composition-pattern structure)
1) divide the class into files with "partial class"
2) use regions

Both ways work good.

/OF</description>
		<content:encoded><![CDATA[<p>hejdig.</p>
<p>Especially working close to the user interface classes tend to get big.  At least one method per user action, and user actions are plenty in a GUI.</p>
<p>During my years pretending to work I haved found out that a &#8220;form class&#8221; contains several parts where one is the event sink where all events from the surrounding world is caught.  This region I call &#8220;Event handlers&#8221; or &#8220;Event sinks&#8221;.<br />
( Yes, I have names for the others to but that is out of scope. )</p>
<p>I have two solutions (besides inventing some fancy class relation-inheritance-interface-composition-pattern structure)<br />
1) divide the class into files with &#8220;partial class&#8221;<br />
2) use regions</p>
<p>Both ways work good.</p>
<p>/OF</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ollie</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22215</link>
		<dc:creator>Ollie</dc:creator>
		<pubDate>Tue, 24 Jul 2007 11:01:10 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22215</guid>
		<description>Not a problem if all classes only have single 25 lined  method with no class parameters or constructors :)

this OO thing is overrated as well :)</description>
		<content:encoded><![CDATA[<p>Not a problem if all classes only have single 25 lined  method with no class parameters or constructors :)</p>
<p>this OO thing is overrated as well :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shawn</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22119</link>
		<dc:creator>Shawn</dc:creator>
		<pubDate>Mon, 23 Jul 2007 16:10:59 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22119</guid>
		<description>I agree fully. I have set VS to basically ignore regions so they don't bother me. 

I find that the motivations behind heavy usage of regions can generally be satisfied with other tools such as Resharper. If you consistently use something like Resharper 3's Format Code to keep all of your classes consistently formatted that, in combination with smart Go to Declaration and Incremental Search should be all you need.

Regions strike me as a hold-over VBism, which is probably why they are so popular.</description>
		<content:encoded><![CDATA[<p>I agree fully. I have set VS to basically ignore regions so they don&#8217;t bother me. </p>
<p>I find that the motivations behind heavy usage of regions can generally be satisfied with other tools such as Resharper. If you consistently use something like Resharper 3&#8217;s Format Code to keep all of your classes consistently formatted that, in combination with smart Go to Declaration and Incremental Search should be all you need.</p>
<p>Regions strike me as a hold-over VBism, which is probably why they are so popular.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22118</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Mon, 23 Jul 2007 15:50:43 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22118</guid>
		<description>@Derik - So click, click, click to find intent? I can't stand that. Nor do I lookup things by access modifier. CTRL+I to the method name. All this said I do sort the members by type then access modifier. 

All specifics aside when I'm finding code 9/10 times it's to try to grok what someone else wrote. If there's a BDD-style test this is the best way, by far, for me to see the pieces. If not, well why not?! Okay, accepting there isn't a nice, expressive test my heuristic then takes me to looking at class names or a pointer from the author (if available). At that point, 95% of classes should be so small as to not need regions.</description>
		<content:encoded><![CDATA[<p>@Derik - So click, click, click to find intent? I can&#8217;t stand that. Nor do I lookup things by access modifier. CTRL+I to the method name. All this said I do sort the members by type then access modifier. </p>
<p>All specifics aside when I&#8217;m finding code 9/10 times it&#8217;s to try to grok what someone else wrote. If there&#8217;s a BDD-style test this is the best way, by far, for me to see the pieces. If not, well why not?! Okay, accepting there isn&#8217;t a nice, expressive test my heuristic then takes me to looking at class names or a pointer from the author (if available). At that point, 95% of classes should be so small as to not need regions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Derik Whittaker</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22116</link>
		<dc:creator>Derik Whittaker</dc:creator>
		<pubDate>Mon, 23 Jul 2007 15:37:52 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22116</guid>
		<description>Dave,

I would have to disagree with you 100% on this one.  Epically #4.  

I believe that regions are great, they allow me to be more productive and find code much easier, faster.

If i know a method is private, why filter through all the public ones to find it.  Simply expand the private region and i have what i want.

Derik</description>
		<content:encoded><![CDATA[<p>Dave,</p>
<p>I would have to disagree with you 100% on this one.  Epically #4.  </p>
<p>I believe that regions are great, they allow me to be more productive and find code much easier, faster.</p>
<p>If i know a method is private, why filter through all the public ones to find it.  Simply expand the private region and i have what i want.</p>
<p>Derik</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22074</link>
		<dc:creator>Dave</dc:creator>
		<pubDate>Mon, 23 Jul 2007 02:54:51 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22074</guid>
		<description>I knew I'd get some controversy outta this one :) 

Definitely gotta get together soon. It's been an unusually busy summer.</description>
		<content:encoded><![CDATA[<p>I knew I&#8217;d get some controversy outta this one :) </p>
<p>Definitely gotta get together soon. It&#8217;s been an unusually busy summer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Drew Marsh</title>
		<link>http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22070</link>
		<dc:creator>Drew Marsh</dc:creator>
		<pubDate>Mon, 23 Jul 2007 02:22:15 +0000</pubDate>
		<guid isPermaLink="false">http://laribee.com/blog/2007/07/22/why-regions-are-fugly/#comment-22070</guid>
		<description>Color me anal rententive. :\ While I agree whole heartedly with most of these, I enforce #1 &#38; #4 here because it's been my experience that without some kind of format like that the devs won't remember to keep the stuff together. I do regions for:

Fields, Constructors, Type specific (meaning to the class/interface) methods, Type specific properties, Interface implementations, Helper methods, Nested Types.

Later,
Drew

P.S. We gotta grab some Lombardi's again soon! ;)</description>
		<content:encoded><![CDATA[<p>Color me anal rententive. :\ While I agree whole heartedly with most of these, I enforce #1 &amp; #4 here because it&#8217;s been my experience that without some kind of format like that the devs won&#8217;t remember to keep the stuff together. I do regions for:</p>
<p>Fields, Constructors, Type specific (meaning to the class/interface) methods, Type specific properties, Interface implementations, Helper methods, Nested Types.</p>
<p>Later,<br />
Drew</p>
<p>P.S. We gotta grab some Lombardi&#8217;s again soon! ;)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
