As the non-existent avid reader of this blog will know, Iâ€™m far more interested in learning new technologies than I probably should be, given the limited amount of time I have to learn them properly! With that in mind, I shouldnâ€™t be looking at yet another, but this one does have a very immediate benefit (honest).
I have been an ASP.NET developer for quite a number of years, and can knock out a complex web site fairly quickly. However, as with most of my other programming until recently, this has always been along the â€œthrow it all in the code-behindâ€ anti-pattern. Iâ€™ve come a long way in the last six months or so, and am now very comfortable using MVVM in WPF, and separating out my code into logical classes as all the Good Programmers do.
Logically therefore, my web site development should follow the same lines. I read up on both MVC and MVP, and came to the conclusion that as an experienced ASP.NET developer, MVP made a lot more sense to me. I couldnâ€™t honestly see any technical benefit of one over the other, mainly as the MVC proponents seem to raise the same old â€œwebforms are evilâ€ arguments, without any real justification (to me at least, they obviously feel justified). My own feeling was that MVP wins out because it completely isolates the view from any action, meaning that the view is as dumb as it can get, which makes unit testing a doddle. I was won over towards the Passive View version of MVP, as this has even less code in the view than the other flavours.
This is not to say thereâ€™s anything wrong with MVC, just that I feel more comfortable with MVP.
This post details my initial exploration of WebFormsMvp.