<?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: In Search of Windows Forms Patterns</title>
	<atom:link href="http://averyblog.com/net/in-search-of-windows-forms-patterns/feed/" rel="self" type="application/rss+xml" />
	<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/</link>
	<description>This is not the greatest tagline in the world... this is just a tribute.</description>
	<lastBuildDate>Mon, 11 Jan 2010 16:36:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Yiyi Sun</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1921</link>
		<dc:creator>Yiyi Sun</dc:creator>
		<pubDate>Fri, 21 Jul 2006 13:38:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1921</guid>
		<description>&lt;p&gt;My two cents go to the Presentation Model too.&lt;br /&gt;&lt;br /&gt;I have refactored the CAB Smart Part Quick Start sample to MVP and PM and added unit tests. Souce code is ready for comparision at:&lt;br /&gt;http://yysun.wbeditor.com/?p=33&lt;br /&gt;&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>My two cents go to the Presentation Model too.</p>
<p>I have refactored the CAB Smart Part Quick Start sample to MVP and PM and added unit tests. Souce code is ready for comparision at:<br /><a href="http://yysun.wbeditor.com/?p=33" rel="nofollow">http://yysun.wbeditor.com/?p=33</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Luke Melia</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1918</link>
		<dc:creator>Luke Melia</dc:creator>
		<pubDate>Fri, 21 Jul 2006 03:44:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1918</guid>
		<description>&lt;p&gt;Another vote for Presentation Model. Be strict. The *only* thing a view (e.g. a Form class) should do is update itself from the PresentationModel and handle user input by calling command-style methods on the PresentationModel. We test drive the PresentationModel and wiring up the UI is invariably a cinch...&lt;br /&gt;&lt;br /&gt;Have fun!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Another vote for Presentation Model. Be strict. The *only* thing a view (e.g. a Form class) should do is update itself from the PresentationModel and handle user input by calling command-style methods on the PresentationModel. We test drive the PresentationModel and wiring up the UI is invariably a cinch&#8230;</p>
<p>Have fun!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kris</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1919</link>
		<dc:creator>Kris</dc:creator>
		<pubDate>Thu, 20 Jul 2006 17:43:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1919</guid>
		<description>&lt;p&gt;Martin Fowler just updated his UI patterns, so there is definitely some good stuff here worth checking out.&lt;br /&gt;&lt;br /&gt;http://martinfowler.com/eaaDev/&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Martin Fowler just updated his UI patterns, so there is definitely some good stuff here worth checking out.</p>
<p><a href="http://martinfowler.com/eaaDev/" rel="nofollow">http://martinfowler.com/eaaDev/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason Kemp</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1922</link>
		<dc:creator>Jason Kemp</dc:creator>
		<pubDate>Wed, 19 Jul 2006 05:01:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1922</guid>
		<description>&lt;p&gt;Wow!&lt;br /&gt;&lt;br /&gt;Thanks, James.&lt;br /&gt;&lt;br /&gt;I agree there isn&#039;t a lot of good info on architecting a Windows Forms GUI; what I&#039;ve learned is through trial and error and paying attention to everything I can for some ideas I can use. &lt;br /&gt;I&#039;m not sure there are that many WinForms shops out there right now. Whenever I&#039;m around fellow .NET nerds, I&#039;m often the only one who does Windows-only development. Then they start talking database access and HttpHandlers, and I stop listening :)&lt;br /&gt;We&#039;ve made mistakes in our UI that are really painful and we&#039;re regretting them all the time. One of the downsides of choosing the Windows Forms route is that you HAVE to get it right the first time because deployment is so much harder.&lt;br /&gt;Charles Petzold had a post about Visual Studio rotting the mind a while ago; I think he&#039;s on to something. Many of the mistakes I see are a result of starting out with the Form in the designer and coding down, as opposed to starting at the data and business object level and coding up.&lt;br /&gt;I&#039;m curious to know what you find in your hunt. :)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Wow!</p>
<p>Thanks, James.</p>
<p>I agree there isn&#8217;t a lot of good info on architecting a Windows Forms GUI; what I&#8217;ve learned is through trial and error and paying attention to everything I can for some ideas I can use. <br />I&#8217;m not sure there are that many WinForms shops out there right now. Whenever I&#8217;m around fellow .NET nerds, I&#8217;m often the only one who does Windows-only development. Then they start talking database access and HttpHandlers, and I stop listening <img src='http://averyblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> <br />We&#8217;ve made mistakes in our UI that are really painful and we&#8217;re regretting them all the time. One of the downsides of choosing the Windows Forms route is that you HAVE to get it right the first time because deployment is so much harder.<br />Charles Petzold had a post about Visual Studio rotting the mind a while ago; I think he&#8217;s on to something. Many of the mistakes I see are a result of starting out with the Form in the designer and coding down, as opposed to starting at the data and business object level and coding up.<br />I&#8217;m curious to know what you find in your hunt. <img src='http://averyblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tim</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1920</link>
		<dc:creator>Tim</dc:creator>
		<pubDate>Mon, 17 Jul 2006 07:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1920</guid>
		<description>&lt;p&gt;This advise is not so much patterns oriented. I have developed for both Windows based forms and ASP.net forms and by far I have found ASP hardest because one must cover more presentation cases.  But I don&#039;t think your problem is as specific as Windows Forms vs. ASP.net.  I think it is an aesthetics issue. What presentation pattern works better as a desktop app vs as a web app. It might be helpfull to expand your search in those terms.  Once you know what works on general aesthetic level I think the .net implementation should be much simpler.  &lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>This advise is not so much patterns oriented. I have developed for both Windows based forms and ASP.net forms and by far I have found ASP hardest because one must cover more presentation cases.  But I don&#8217;t think your problem is as specific as Windows Forms vs. ASP.net.  I think it is an aesthetics issue. What presentation pattern works better as a desktop app vs as a web app. It might be helpfull to expand your search in those terms.  Once you know what works on general aesthetic level I think the .net implementation should be much simpler.  </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kris</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1917</link>
		<dc:creator>Kris</dc:creator>
		<pubDate>Sun, 16 Jul 2006 05:21:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1917</guid>
		<description>&lt;p&gt;I&#039;d recommend also checking out Fowler&#039;s Presentation Model pattern as well.  After trying a few implementations using MVP, I found Presentation Model to be much easier while still providing reusability and forms that were dirt simple.  For instance, it was easy to utilize the presentation model components in some automated FitNesse testing we had on top of our NUnit tests.  Avoiding unnecessary interfaces for dialogs and forms was a nice thing IMO.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;d recommend also checking out Fowler&#8217;s Presentation Model pattern as well.  After trying a few implementations using MVP, I found Presentation Model to be much easier while still providing reusability and forms that were dirt simple.  For instance, it was easy to utilize the presentation model components in some automated FitNesse testing we had on top of our NUnit tests.  Avoiding unnecessary interfaces for dialogs and forms was a nice thing IMO.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Omer van Kloeten</title>
		<link>http://averyblog.com/net/in-search-of-windows-forms-patterns/comment-page-1/#comment-1916</link>
		<dc:creator>Omer van Kloeten</dc:creator>
		<pubDate>Sat, 15 Jul 2006 21:51:00 +0000</pubDate>
		<guid isPermaLink="false">http://averyblog.infozerk.net/?p=553#comment-1916</guid>
		<description>&lt;p&gt;I&#039;d forget about using UIPAB for Windows Forms development if I were you. It&#039;s too buggy and lacking to use in Windows Forms as it was created for Web Forms applications.&lt;br /&gt;I think Model View Presenter is best if you have an object model behind your views.&lt;br /&gt;&lt;br /&gt;But what really matters is sticking to the pattern, because if you cut corners, it gonna get unmaintainable. My project has some lazy developers who develop &#039;outside&#039; the pattern because abiding to the pattern is &#039;inconvenient&#039; and the code base has simply become unmaitainable as a code base that uses the UIPAB.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;d forget about using UIPAB for Windows Forms development if I were you. It&#8217;s too buggy and lacking to use in Windows Forms as it was created for Web Forms applications.<br />I think Model View Presenter is best if you have an object model behind your views.</p>
<p>But what really matters is sticking to the pattern, because if you cut corners, it gonna get unmaintainable. My project has some lazy developers who develop &#8216;outside&#8217; the pattern because abiding to the pattern is &#8216;inconvenient&#8217; and the code base has simply become unmaitainable as a code base that uses the UIPAB.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

