Welcome to Windows Presentation Foundation (WPF)
Top Tasks :

WPF Community Bloggers

Browse by Tags

All Tags » Patterns » General Software Development   (RSS)

  • MVP & MVC simply put

    This question seems to get asked a lot, this recent article on codeproject does a decent job of explanation as well as this article from Infragistics Guidisan Todd Snyder . If I was sum it up very simply, the different is entry point into the pattern. In MVC the entry point is the controller, if you look at the Microsoft MVC framework for example the controller class is where you bind your view and everything else (model) together. In MVP mean while the entry point is the view, webforms lends it's self very well to this pattern as you can bind the aspx and your view and use the normal aspx entry point to get at the rest of your patttern (in fact winforms works well on this pattern as well). Going a bit further You can break down your view into two, a view and View-extender. The temptation in webforms land in a passive sense of the pattern is hold all sorts of view centric items on the presenter. If you have lots going on in your presenter for your view and you want to keep your view ultra Read More...
  • The design in TDD

    Lately I've been drafting posts on my daily commute and post them up in batches (just in case you were wondering :). I recall an article (not sure where I read it) about Ron Jeffries and his ability as an 'alpha architect'. Such people are rare, the design they have mostly in their mind with TDD providing a way of slightly reshaping the design and proving the model (in a pair session that can mean validating each other’s ideas). Another kind of folks is the folks that have a general system picture but design a piece at a time with model shaping and validation occurring as they go. Both are no less a way of designing and developing a system but while the 'alpha architect' has considered overall, system considerations and won't introduce design faults, the other folks need to go carefully to avoid those faults. The point that TDD is a design process seems to get missed, writing tests before your code is only part of the process and not the sum total. The trouble I have found is that the design Read More...
  • The Presenter First pattern

    In pattern terms there will be a few patterns for visual interface layering that you heard of, MVC, MVP, Humble Dialog etc. I was talking with Howard one night and he mentioned his interest in a MVP variant called Presenter First. This variant incrases the layering of MVP triads in the pattern and brings a more TDD approach to the pattern. The paper is a must read as is the interviews the authors had with Ron Jacobs , there is also further examples here and here . On a related note visual interface patterns for me still seem to fail the issue of dealing with threads and managing an interfaces behaviour in a thread, I was talking this through with Jeff and he later blogged his thoughts here . Read More...
  • MVC, such a big deal?

    This is one of the posts where I should be going to bed rather than starting this but I just won't sleep if I don't post it. I was going over the comments in Ayende's post on Castle Igloo and noticed someone had posted this. "Communication between a view and its associated controller is straightforward because View and Controller are specifically designed to work together. Models, on the other hand, communicate in a more subtle manner." "Unlike the model, which may be loosely connected to multiple MVC triads, Each view is associated with a unique controller and vice versa. Instance variables in each maintain this tight coupling." -- Applications Programming in Smalltalk-80(TM): How to use Model-View-Controller (MVC) http://st-www.cs.uiuc.edu/users/smarch/st-docs/mvc.html In fact if you read Martin Fowlers essay on GUI Architecturer it captions a MVC UML diagram with Essential dependencies between model, view, and controller. (I call this essential because Read More...
  • Web frameworks 2006

    I am writing this now as the end of the year approaches as I am sure that by the end of 2007 the web framework landscape will have changed again. Only a few years ago a web developer had Perl\CGI then along came ColdFusion, ASP and PHP. Until recently that's the way it was for web developers and very often each company would cook their own bespoke web framework with varying power around these. Then some chaps looked at Ruby as much more powerful dynamic language and cooked up Rails, no need for bespoke when now have a very powerful one to hand that you can adapt. Of course in between these was JVM\Structs and CLR\Webforms but the need for complete control over output (and in some cases control over every inch of the framework) ment that these did'nt factor in some cases. Rails is gaining new members of its audience every day, drawn by the fact that it lets you get your job done quickly (like common database tasks with a ORM , like common output rendering, like moving databases etc) Read More...

Copyright © 2006 Microsoft Corporation. All Rights Reserved. | Terms of Use | Privacy Statement | Contact Us