If only I were

Building Great Software

Posts Tagged ‘mvc

ASP.NET MVC goes Beta

with one comment

I just saw that ASP.NET MVC went beta based on a tweet from Kevin Dente. Time to do some upgrades and see what is new and changed in this release.

Written by Chris Sutton

October 15, 2008 at 2:44 pm

Posted in Patterns, Technology, Web

Tagged with , , ,

Looking Back at the MVC Pattern – Prologue

leave a comment »

Looking back at original writings surrounding an idea is important when you are trying to take your understanding deeper.

My goal in this series is to draw attention to some of the original documents and highlight what people said about MVC in its inception.

It’s been noted before that naming a pattern is important. With the MVC pattern you really need to start with Trygve Reenskaug’s writings since he named and described MVC.

In my next post we’ll look at his original MVC paper called Thing-Model-View-Editor.

Written by Chris Sutton

September 27, 2008 at 9:52 am

Who and What is ASP.NET MVC for?

with 3 comments

Michael Neel wrote today about what a good definition is for ASP.NET MVC.

I have to admit that many of my descriptions of ASP.NET MVC have been tied to deficiencies and frustrations in the current ASP.NET Webforms implementation. It is time to start talking less about what it isn’t and to start talking more about what it is.

Michael also points out that it is not likely people will use ASP.NET MVC just so they can use the MVC pattern, since you could come pretty close to MVC with some extra work in ASP.NET Webforms.

The main point of the post was to figure out a good definition of ASP.NET MVC that doesn’t rely on problems in Webforms. And here is where I don’t think he captured what ASP.NET MVC is about. Michael ends up with this definition

“ASP.NET MVC is the evolution of Classic ASP, adding an easier separation of concerns while not using an event based model like WebForms.”

First off, I used Classic ASP successfully for several years, but I don’t think there is enough in common to invoke Classic ASP in this definition. What we typed in .asp pages looked like what you make with .aspx pages in the default view engine, but beyond that I can’t find much similarity.

Second, he ends up counter balancing ASP.NET MVC against the event model. I’m thrilled that most of the event model has gone away with MVC, but isn’t this part of the definition implying that there is a problem with the event model in ASP.NET Webforms? So I think to define what value a company would get from ASP.NET MVC you need to counter balance it against the current Webforms implementation (to a degree). But it definitely needs stand more on it’s own as it grows up.

Anyway, Michael’s post has has really got me thinking. In an interview this week I was explaining to an architect why one would want to use ASP.NET MVC and I think I was able to articulate pretty well why you would want to use it and who would not benefit so much from it. I don’t have a better succinct definition yet.

So what benefits does ASP.NET MVC have for me?

It encourages me to separate out fundamental concerns. I want my tools to encourage me along a successful path. They can’t make me build good applications, but they can give me a good model. Having a View that is just about transforming data into a page (or some other format) is good. There isn’t much temptation to put business, data or flow logic in the view. The Controller accepts requests in a predictable format, finds out what Model it needs to call and says what view to render if necessary. The Model can easily be decoupled from the first two parts.

Routing is a first class concept now giving me a prescriptive way to specify a request format. It’s not an after thought like url rewriting.

ASP.NET MVC certainly flattens out the complex Webforms event model. Any time I can cut unneeded complexity from an application I will. I can’t imagine Webforms without preinit, init, render, etc.

As I do more and more TDD with web development, I know that ASP.NET MVC is easier to unit test.

Last of all, it takes me closer to the HTML, CSS and JavaScript. Some people want to pretend these languages don’t exist and want to do Winforms on the Web and others just don’t want to have to deal with the quirks of those languages. I make no claim that they are perfect, but they are good enough and by this point in web history there is agreement on their implementations.

Can we quite having to write ASP.NET MVC? It would be good to have a shorter name for writing. And yes, I ended my title in a preposition, get over it.

Written by Chris Sutton

July 26, 2008 at 3:42 pm

TechEd 08

leave a comment »

My flight leaves for Orlando at 5am this Saturday for the TechEd 2008 developers week. I’m working as a Technical Learning Guide (TLG) in the Hands on Labs area.

The highlight of the week will be getting to present an “Advanced MVC” Instructor Led Lab (ILL) on Tuesday and Thursday afternoons. If you attend you’ll get to do things like build a custom view engine, swap out the controller factory and use some more powerful routes.  Should be a good time.

I’ll also be at Party with Palermo on Monday Night and the Influencer/MVP Party Wednesday night (no, I’m not an MVP).

Between working 32 hours as a TLG, a couple of parties and and attending some sessions; I think I’ll have a full week.

Written by Chris Sutton

May 30, 2008 at 12:33 pm

Posted in Life, Tech Community, Technology

Tagged with , , , , , ,

IronRuby and ASP.Net MVC

leave a comment »

It looks like John Lam and company are making some really good progress with commit 111 on IronRuby.

Along side IronRuby, the ASP.Net MVC team is developing the MVC framework rapidly with multiple releases in the last 6 months.

As these two ventures mature, I believe some really great projects will emerge. One project that has unified the Ruby/Rails community is RubyGems.  I strongly believe that we need a similar package manager. There has been some talk of this kind of project, but I haven’t seen anything significant yet.

The best of what comes out of these projects will not necessarily be the ability to run Ruby on Rails or imitate it, although running it will be a great milestone. The real action will be from idiomatic home-grown projects.

Written by Chris Sutton

May 23, 2008 at 1:54 pm

Posted in Technology, Thoughts

Tagged with , , , ,

Follow

Get every new post delivered to your Inbox.