Editorials

Should We Stay With APS.Net Web Forms?

I was reading Dino Esposito’s article in Code magazine today regarding the differences between ASP.Net, ASP.Net MVC, Web API and STAs. He did a really great job comparing the different technologies at a high level, which was his goal. The main point he made is that there was a good reason for ASP.Net Web Forms to work the way they did.

Additionally he made the assertion that it is not necessarily in the best interest of a company having a deep investment in ASP.Net with Web Forms to move off that technology, or even extending or even starting new projects in that environment.

From a pragmatic perspective I can see his point, and even agree. However, I’m wondering if that perspective is too short sighted. There are three things that make me ask questions.

1) AJAX

2) Separation of Concerns

3) Testability (made possible by item 2)

AJAX enables web sites to interact with web services without going through a complete postback and repainting of the entire pace. ASP.Net Web Forms isn’t really built to take advantage of AJAX efficiently. While you can make it work, it pretty much defeats the purpose of using Web Forms in the first place, and has additional un-necessary overhead.

As a side note, I’d like to make sure I mention that Microsoft had AJAX capability before AJAX was even released as a W3C specification. It only worked in Internet Explorer, so I never really had a chance to use it because all web sites I was involved with had to support other browsers.

Back to the topic, MVC results in separation of concerns, which in turn enables much better automated testability. Those things being said I believe a company would be better served to retool their developers allowing them to use tools allowing automated testing, and will receive a rapid return on their investment. Automated testing has incredible benefits when it comes to software that continues to be developed and expanded.

As second thought would be for the developers. Web Forms is a Microsoft only technique. However, MVC is a mature methodology that has been adopted and perfected in JAVA for many years. In fact, it was even a popular pattern on Java Micro Edition platforms, it was that broadly adopted.

Moving to MVC expands the talent base a company can call upon. A Java developer could make a rapid jump to Microsoft MVC. Also, Microsoft developers are going to want the newer technologies because that is the direction many companies are moving, and because it opens up the potential opportunities for them because they are using tools that are similar or used in the Java world.

Should you stay with Web Forms? I can see reasons to do that. However, you would be making the same decisions as many insurance or health care companies did by staying with COBOL.

Would you like to share your opinion? Do it here online. You can also drop an Email to btaylor@sswug.org and I’ll include your comments in a later editorial.

Cheers,

Ben