{"id":216,"date":"2006-05-05T23:22:09","date_gmt":"2006-05-06T05:22:09","guid":{"rendered":"http:\/\/jameskovacs.com\/2006\/05\/06\/JeanPaul+Boodhoo+On+ModelViewPresenter"},"modified":"2006-05-05T23:22:09","modified_gmt":"2006-05-06T05:22:09","slug":"jeanpaul-boodhoo-on-modelviewpresenter","status":"publish","type":"post","link":"https:\/\/www.jameskovacs.com\/index.php\/2006\/05\/05\/jeanpaul-boodhoo-on-modelviewpresenter\/","title":{"rendered":"Jean-Paul Boodhoo on Model-View-Presenter"},"content":{"rendered":"<p>Jean-Paul reappears on <a href=\"http:\/\/www.dnrtv.com\/\">dnrTV<\/a>&nbsp;to talk about Model-View-Presenter, which is a cool pattern for abstracting away your UI implementation technology. For example you can&nbsp;re-use the same Model and Presenter code with&nbsp;ASP.NET and WinForms. Additionally the view ends up being <em>really<\/em> dumb, which means that parsing, validation, and other logic traditionally in your ASPX code-behind or WinFom is now encapsulated in the presenter and can be identical between the two. This episode is well worth the watch.<\/p>\n<p><a href=\"http:\/\/www.dnrtv.com\/default.aspx?showID=14\">Jean-Paul Boodhoo on Model-View-Presenter<\/a><a href=\"http:\/\/www.dnrtv.com\/default.aspx?showID=14\"><\/a><\/p>\n<p>Also worth watching is Jean-Paul\u2019s earlier double-header on Test-Driven Development (TDD). You want to see how TDD is meant to be done, watch and learn!<\/p>\n<p><a href=\"http:\/\/www.dnrtv.com\/default.aspx?showID=10\">Jean-Paul Boodhoo on Test-Driven Development Part 1 of 2<\/a><\/p>\n<p><a href=\"http:\/\/www.dnrtv.com\/default.aspx?showID=11\">Jean-Paul Boodhoo on Test-Driven Development Part 2 of 2<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jean-Paul reappears on dnrTV&nbsp;to talk about Model-View-Presenter, which is a cool pattern for abstracting away your UI implementation technology. For example you can&nbsp;re-use the same Model and Presenter code with&nbsp;ASP.NET and WinForms. Additionally the view ends up being really dumb, which means that parsing, validation, and other logic traditionally in your ASPX code-behind or WinFom [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,23],"tags":[],"class_list":["post-216","post","type-post","status-publish","format-standard","hentry","category-aspnet","category-software-design"],"_links":{"self":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/posts\/216","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/comments?post=216"}],"version-history":[{"count":0,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/posts\/216\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/media?parent=216"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/categories?post=216"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/tags?post=216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}