Keyvan Nayyeri

God breathing through me

Is ASP.NET MVC Learning Independent from ASP.NET WebForms?

ASP.NET MVC is supposed to be an alternative for the ASP.NET webforms not a replacement for it, and Microsoft ASP.NET team strongly supports this statement. By nature, ASP.NET MVC is built to bring a commonplace and popular software development pattern to the world of the ASP.NET and make it easier and simpler to build testable web applications on top of this pattern.

As you would know, since a few months ago, Simone and I started working on a new book for Wrox entitled Beginning ASP.NET MVC, and at the infancy stages and based on some reasons that I listed before, we came to an agreement to work on a Beginning series book.

Wrox has a series of guidelines defined for each of its book series as a criteria for authors to organize their content and present it, so they can target a level of audience and prevent conflicts and confusions, and also to be able to build a complete learning process for each technology from the scratch to more advanced topics. I can exemplify this with the difference of two popular series known as Beginning and Professional because Beginning is supposed to be a prerequisite for the Professional series, and distinguishing these two series is a little harder than others. Beginning series is defined to rely on more basic concepts with a pragmatic approach in order to get a newbie and turn him to a real world developer able to build real world applications and with a good level of knowledge about the technology, but Professional series is defined to rely on some concepts that appear in professional everyday development, and to get a developer who already has a good knowledge in principles and turn him to become a developer who can build business applications with a good quality and in a reasonable time with an emphasis on techniques rather than concepts. Albeit there isn’t a certain clue to make sure all titles are organized in this way, but honestly Professional series are easier to write because of the fact that authors have to deal with aware readers and don’t need to explain some points that look obvious points. Moreover, for a Professional series it’s possible to outline some principles without worrying about anything, but for a Beginning series it’s difficult to make sure that you’re teaching everything in a way that all your readers can understand the concepts regardless of having a background or not!

Returning to my main thread, while working on the book, both Simone and I had to rewrite some paragraphs and sample codes to make sure everything is bound to the criteria defined for a Beginning series and every reader even without a good background in the ASP.NET MVC or a deep knowledge in the ASP.NET webforms can read and understand them. From the beginning (not that Beginning series!) one of our main goals  has been to build a completely independent ASP.NET MVC learning from the ASP.NET webforms that walks through principles and the other title, Professional ASP.NET 3.5 MVC, supplements this learning process with more advanced topics and techniques.

Despite these attempts we’re finally coming to an agreement on the fact that it’s not possible to teach the ASP.NET MVC without a good background in the ASP.NET webforms or at least in some specific concepts. We faced with this problem in many circumstances in which we had two options to explain the constant concepts between the ASP.NET webforms and the ASP.NET MVC, or to leave them as are for the reader and ask her to read a separate title to learn about these topics. Obviously, the second option was the better choice for us because such concepts are not a part of the ASP.NET MVC and discussing these materials is abundant especially because there is a high chance that our readers come from a good background in such materials.

For example, there were some cases that we had to talk about a part of some objects like Request and Response. While these classes are rewritten to meet the requirements of the ASP.NET MVC especially their dependencies for unit testing, the principles are still constant, so we preferred to leave this to reader’s knowledge rather than describing  them again.

All in all, I can wrap this discussion up and state that unlike the assertion that you (like us) may have in mind about the dependency of the ASP.NET MVC on the ASP.NET webforms, but it looks like that the ASP.NET MVC is just an alternative that is heavily tied to its predecessor in lower levels both in concepts and development. Recently Steven Smith had a write up to argue the necessity of multiple files for a single ASP.NET MVC view like what we have in the ASP.NET webforms but it appears to be unavoidable at the moment because the new ASP.NET MVC is using WebFormsViewEngine out of the box, and there are some other instances like this to mention.

Therefore, I can simply assert that at least for the first upcoming version, the ASP.NET MVC learning is tied to the ASP.NET MVC and it obliges a good background in the ASP.NET webforms, nevertheless, I hope that we have a clear distinction between these two technologies in the future to allow a developer follow his own path in the technology without putting an extra effort into learning something that he may not need.

2 Comments

Pingback from ASP.NET MVC Archived Blog Posts, Page 1

Pingback from Dew Drop – September 29, 2008 | Alvin Ashcraft's Morning Dew

Leave a Comment





Ads Powered by Lake Quincy Media Network