Thursday, 6 December 2012

What a 'salad of DLLs' are the ASP.NET MVC 4.0 template projects

I was taking a look at ASP.NET MVC 4.0 to see how easy it would be to use its routing engine for TeamMentor REST API, and its just ridiculous the sheer amount amount of dependencies that it required (as per the the test/template projects).


To see this in action, open VisualStudio 2010, and chose to create new ASP.NET MCV 4 project



Then select the Internet Application project type:


And look at the amount of DLLs/References that were added (and for such a simple website!!!)



And choosing the Web API project type:


...doesn't make it much better:


Compare that with the TeamMentor dependencies (which is much bigger application):


Here is Resharper analysis of the TeamMentor dependencies usage:



At the moment TeamMentor is quite clean (from a dependencies point of view) and I don't really want to add another 20 to 40 dependencies in there!!!

What ever happened to Simple solutions? Maybe Microsoft ASP.NET team needs to take some lessons from the Lenovo Simple, Unique, Valuable design principles (I was going to say Apple, but that must be a banned word in Redmond :)  )