Ahmed
Ahmed

Reputation: 11373

ASP.NET MVC productivity?

Though, i'm still a novice for ASP.NET MVC, my manager asked me for a report about ASP.NET MVC's productivity. Actually we are planning to develop a real life, kinda big system using ASP.NET MVC. The questions are:
1- Is it really goona scale for a fairly large system?
2- Is it goona be easy for developers to pick up in a short period "weeks"?
3- Are there any real life systems that are built using ASP.NET MVC? "Except for NerdDinner"
4- How can MVC save some developing time over ASP.NET?

Upvotes: 7

Views: 1955

Answers (6)

user3629301
user3629301

Reputation: 1

This is my point of view.

Will it scale? The truth is nobody posted a decent benchmark test with equivalent architectures to compare. Just words with no tests.

Is it going to be easy for developers to pick up in a short period "weeks"? Probably the basic stuff yes but the hard stuff not.

Are there any real life systems that are built using ASP.NET MVC? As said, yes.

How can MVC save some developing time over ASP.NET? People said that because the code have "much better seperation of concerns" sudently magic happens and productivity pops out. I programmed with Turbo Pascal long time ago. My "look and feel" with MVC remember me old times with DOS and Pascal. No good visual references of one screen at design time. Instead of one webform with some controls inside visual studio, you have the object explorer full of files. At this time i could not figure out how this pattern could be more productive just offering "better seperation of concerns".

Upvotes: 0

Jiang
Jiang

Reputation: 21

It definitely scales. But productivity compared with webforms? Unless you are really bad at webforms, it's no brainer that webforms are light years faster in RAD terms.

Yes, nice TDD for ASP.NET MVC, but you have to realize that you are testing a lot of stuff which are built-in with webforms such as gridview, and all those nice drag-drop custom controls. You save big time not have to test those built-in controls when you are doing webforms while in MVC you crank up your own and yes you better write tons of more code to test them. So the gain on testability is really an illusion.

I will not jump into MVC until I see something similar to gridview type of RAD.

It also helps if you know CodeSmith and you can automate all the tedious, repetitive code in MVC. TDD code once, then create a CodeSmith template, then you just generate your code.

Upvotes: 0

Garry Shutler
Garry Shutler

Reputation: 32698

If by productivity your manager really means "how long will it take to write feature X?" then quite possibly you will not be as productive in the short term with ASP.NET MVC. However, the much better seperation of concerns in the framework, when compared to webforms, means it is much easier to test and write well structured code for.

This will give you improved long term productivity but probably at the expense of short term productivity. If you can get your manager to see past this then you're on to a winner. Good luck with that one!

To answer your direct questions:

  1. Will it scale?
    • Definitely, it's built upon the highly performant ASP.NET framework and doesn't bring a lot of the Webforms baggage with it.
  2. Is it going to be easy for developers to pick up in a short period "weeks"?
    • Depends on the current skillset of your developers. If they are familiar with web development and the MVC pattern it should come to them easily. If they are only familiar with ASP.NET Webforms drag-and-drop-with-some-code-behind then they will have a whole new paradigm to learn which will take time.
  3. Are there any real life systems that are built using ASP.NET MVC?
    • This site is a great example of one.
  4. How can MVC save some developing time over ASP.NET?
    • Covered in my initial answer. However, it can also save time in the long run as you don't really lean on the framework very much so you won't code yourself into a corner of workarounds which can happen frequently with Webforms.

Upvotes: 12

mookid8000
mookid8000

Reputation: 18628

The most interesting question in my opinion is #4 - how can using ASP.NET MVC save development time?

It can, by allowing you to build an application framework, upon which all your features and functionality is built.

Ayende has a really interesting post about this.

I think many ASP.NET MVC developers will agree with me that ASP.NET MVC is by no means ready for building features of complex applications - you must put some effort into fitting the framework to your application, and only then can you begin to actually gain an advantage from using it.

Upvotes: 0

AnthonyWJones
AnthonyWJones

Reputation: 189439

  1. Yes it will scale well to large systems, certainly better than Forms.
  2. Depends, developers already well indoctrinated into ASP.NET Forms may find the transition difficult. Classic ASPers may find it strangly familiar in some aspects. If the developers are well grounded in how HTTP works and the benefits of the general MVC approach it shouldn't be a big problem.
  3. You are using one
  4. Using Unit tests is the key to getting the most benefit from MVC, it will save you masses of time, in debugging.

Upvotes: 1

roryf
roryf

Reputation: 30150

To answer #3 - yes, you're using one right now :o) What Was Stack Overflow Built With?

Upvotes: 1

Related Questions