<?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: Learning the Model View Presenter Pattern</title>
	<atom:link href="http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/feed/" rel="self" type="application/rss+xml" />
	<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/</link>
	<description></description>
	<lastBuildDate>Tue, 18 Aug 2009 22:20:45 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Oleg Zhukov</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-1126</link>
		<dc:creator>Oleg Zhukov</dc:creator>
		<pubDate>Thu, 30 Oct 2008 11:10:17 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-1126</guid>
		<description>If you are interested in a Model View Presenter framework implementation for .NET then take a look at &lt;a href=&quot;http://www.mvcsharp.org&quot; title=&quot;Model View Presenter for .NET&quot; rel=&quot;nofollow&quot;&gt;MVC# Framework&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>If you are interested in a Model View Presenter framework implementation for .NET then take a look at <a href="http://www.mvcsharp.org" title="Model View Presenter for .NET" rel="nofollow">MVC# Framework</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Setu</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-1076</link>
		<dc:creator>Setu</dc:creator>
		<pubDate>Thu, 06 Mar 2008 10:25:09 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-1076</guid>
		<description>Hi Ben,

Yes, the link doesn&#039;t work.  Can you please email me the sample code as well or fix the link?

Thanks
Setu.</description>
		<content:encoded><![CDATA[<p>Hi Ben,</p>
<p>Yes, the link doesn&#8217;t work.  Can you please email me the sample code as well or fix the link?</p>
<p>Thanks<br />
Setu.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-1066</link>
		<dc:creator>James</dc:creator>
		<pubDate>Tue, 29 Jan 2008 17:10:28 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-1066</guid>
		<description>Ben, the link to the sample project does not work. Has it moved? If so, could you email me the project?</description>
		<content:encoded><![CDATA[<p>Ben, the link to the sample project does not work. Has it moved? If so, could you email me the project?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Latest Misunderstandings &#38;#187; Blog Archive &#38;#187; Initial Presenter-First demonstration program</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-538</link>
		<dc:creator>Latest Misunderstandings &#38;#187; Blog Archive &#38;#187; Initial Presenter-First demonstration program</dc:creator>
		<pubDate>Sun, 16 Jul 2006 01:53:45 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-538</guid>
		<description>[...] My demo is going to try to extend slightly the demo album app used by Martin Fowler in describing Model-View-Presenter (MVP), I&#8217;ve also looked at a C# version of this app from Ben Reichelt&#8217;s blog. [...]</description>
		<content:encoded><![CDATA[<p>[...] My demo is going to try to extend slightly the demo album app used by Martin Fowler in describing Model-View-Presenter (MVP), I&#38;#8217;ve also looked at a C# version of this app from Ben Reichelt&#38;#8217;s blog. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-537</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 30 Mar 2006 19:04:44 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-537</guid>
		<description></description>
		<content:encoded><![CDATA[]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-536</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 30 Mar 2006 18:59:22 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-536</guid>
		<description></description>
		<content:encoded><![CDATA[]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-535</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Mon, 20 Mar 2006 15:48:19 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-535</guid>
		<description>&gt; The presenter simply tells the view that IsClassical is true/false then its up to the view to decide what actions to take because of that.

I&#039;ve thought more about this (and had a re-read of the martin fowler MVP page, which I&#039;m sure has been updated since I last looked). The presenter implements *all* of the biz logic for any UI. The view is not allowed (my understanding of MVP) to &quot;decide&quot; any actions.

Now if I could the the product manager to use FitNess *and* I actually thought it was worth the effort we could have FIT tables to demonstrate what should happen in various UI senarios.

If only I&#039;d gone to the effort of re-reading the Folwer page before my earlier post I could have better stated my thinking [now not then, which would have been then too had I read it, clear :-) ].

Cheers,

adam</description>
		<content:encoded><![CDATA[<p>> The presenter simply tells the view that IsClassical is true/false then its up to the view to decide what actions to take because of that.</p>
<p>I&#8217;ve thought more about this (and had a re-read of the martin fowler MVP page, which I&#8217;m sure has been updated since I last looked). The presenter implements *all* of the biz logic for any UI. The view is not allowed (my understanding of MVP) to &#8220;decide&#8221; any actions.</p>
<p>Now if I could the the product manager to use FitNess *and* I actually thought it was worth the effort we could have FIT tables to demonstrate what should happen in various UI senarios.</p>
<p>If only I&#8217;d gone to the effort of re-reading the Folwer page before my earlier post I could have better stated my thinking [now not then, which would have been then too had I read it, clear <img src='http://benreichelt.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  ].</p>
<p>Cheers,</p>
<p>adam</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: breichelt</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-534</link>
		<dc:creator>breichelt</dc:creator>
		<pubDate>Mon, 20 Mar 2006 10:54:47 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-534</guid>
		<description>Thats a good point adam, but IMO (not knowing much about MVP either) I would think that this is okay, because it still abstracts the concept of IsClassical from the actual view itself.  The presenter simply tells the view that IsClassical is true/false then its up to the view to decide what actions to take because of that.

By adding a ComposerEnabled property, you are letting some implementation details of the view permeate into the presenter. Again, just my (possible naive) opinion :)</description>
		<content:encoded><![CDATA[<p>Thats a good point adam, but IMO (not knowing much about MVP either) I would think that this is okay, because it still abstracts the concept of IsClassical from the actual view itself.  The presenter simply tells the view that IsClassical is true/false then its up to the view to decide what actions to take because of that.</p>
<p>By adding a ComposerEnabled property, you are letting some implementation details of the view permeate into the presenter. Again, just my (possible naive) opinion <img src='http://benreichelt.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-533</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Mon, 20 Mar 2006 10:49:33 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-533</guid>
		<description>This might be a bit late for you to be interested but; I&#039;m currently looking at MVP/TDD for an internal teach in. The sample I drew up worked in a similar manner to your download. However I spotted a &#039;bug&#039; in my own code and you appear to have the same issue.

public bool AlbumForm::IsClassical
{
    get{ /* ... */}
    set
    {
        cbClassical.Checked = value;
        txtComposer.Enabled = value;
    }
}

this is asnippet from your production code where you actually have business logic. i.e. setting the classical checkbox state also enables the state of another control. (In my case is was the clearing of a list before populating it.)

My current thinking is that this is wrong and should be 2 properties/methods on the IAlbumView [ComposerEnabled *and* ISClassical] such that setting the current Album on the presenter should invoke both of these methods seperatly.

I&#039;ve not had enough experience using MVP to &#039;know&#039; if I&#039;m right :-) so I&#039;m still open minded about it all.</description>
		<content:encoded><![CDATA[<p>This might be a bit late for you to be interested but; I&#8217;m currently looking at MVP/TDD for an internal teach in. The sample I drew up worked in a similar manner to your download. However I spotted a &#8216;bug&#8217; in my own code and you appear to have the same issue.</p>
<p>public bool AlbumForm::IsClassical<br />
{<br />
    get{ /* &#8230; */}<br />
    set<br />
    {<br />
        cbClassical.Checked = value;<br />
        txtComposer.Enabled = value;<br />
    }<br />
}</p>
<p>this is asnippet from your production code where you actually have business logic. i.e. setting the classical checkbox state also enables the state of another control. (In my case is was the clearing of a list before populating it.)</p>
<p>My current thinking is that this is wrong and should be 2 properties/methods on the IAlbumView [ComposerEnabled *and* ISClassical] such that setting the current Album on the presenter should invoke both of these methods seperatly.</p>
<p>I&#8217;ve not had enough experience using MVP to &#8216;know&#8217; if I&#8217;m right <img src='http://benreichelt.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  so I&#8217;m still open minded about it all.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://benreichelt.net/blog/2005/11/18/learning-the-model-view-presenter-pattern/comment-page-1/#comment-532</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Mon, 28 Nov 2005 08:29:06 +0000</pubDate>
		<guid isPermaLink="false">http://s194721765.onlinehome.us/blog/2005/11/18/learning-the-model-view-presenter-pattern/#comment-532</guid>
		<description>Source code: Download


Lately, I have noticed that the Humble Dialog Box or Model...</description>
		<content:encoded><![CDATA[<p>Source code: Download</p>
<p>Lately, I have noticed that the Humble Dialog Box or Model&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>

