I've worked almost exclusively as a webforms programmer for the last few years and transitioning to this over the last month has been surprisingly challenging for me. I'm definitely a newbie to the "real" web and I never knew how much of the web webforms actually hid from me.
Despite the difficulties, I've been encouraged by the flexibility of MVC and am thinking about making it my framework of choice for my coming projects.
IMO, the best bits of MVC are:
-Separation of concerns. No more mixing business logic with the presentation ("view") layer. I can swap out layers of my architecture more easily
-More control over page elements. I always found the ASP.NET controls a bit lacking...
-Leaner apps. I understand that this is mostly the developer's fault as there's always a way to do things better, but most of the apps I've seen written in webforms just feel bloated. There's too much cruft built into and around webforms to make it seem desktop-y
-Better support for TDD. I've not used this part of it yet, but the MVC model does lend itself to TDD much better than webforms.
I'm not saying that WebForms will be completely gone from my development cycle, though. It is still good for many things. I think the most glaring benefits are:
-Rapid development for internal/quickie apps. This may just be my experience and familiarity talking but it's very easy to throw up a quick and dirty app with webforms. Great for internal projects.
-Legacy applications. This benefit will fade over time, but I was hearing that there were problems with MVC on II6. Also, I don't believe it's supported on any version below II6.
Despite the difficulties, I've been encouraged by the flexibility of MVC and am thinking about making it my framework of choice for my coming projects.
IMO, the best bits of MVC are:
-Separation of concerns. No more mixing business logic with the presentation ("view") layer. I can swap out layers of my architecture more easily
-More control over page elements. I always found the ASP.NET controls a bit lacking...
-Leaner apps. I understand that this is mostly the developer's fault as there's always a way to do things better, but most of the apps I've seen written in webforms just feel bloated. There's too much cruft built into and around webforms to make it seem desktop-y
-Better support for TDD. I've not used this part of it yet, but the MVC model does lend itself to TDD much better than webforms.
I'm not saying that WebForms will be completely gone from my development cycle, though. It is still good for many things. I think the most glaring benefits are:
-Rapid development for internal/quickie apps. This may just be my experience and familiarity talking but it's very easy to throw up a quick and dirty app with webforms. Great for internal projects.
-Legacy applications. This benefit will fade over time, but I was hearing that there were problems with MVC on II6. Also, I don't believe it's supported on any version below II6.