The Wayback Machine - https://web.archive.org/web/20060619113910/http://www.adobe.com:80/devnet/coldfusion/articles/cf_aspnet03.html
Accessibility

ColdFusion Article

Life After ASP


Table of Contents

  1. Introduction
  2. Migrating Sooner Than Later
  3. "But We Are Committed to .NET"
  4. Introducing ColdFusion
  5. Architectural Comparison
  6. Comparing Languages
  7. Beyond ASP
  8. ColdFusion vs. ASP.NET
  9. Conclusion

"But We Are Committed to .NET"

To organizations committed to (or evaluating) .NET, asking the questions in the previous section may seem somewhat heretic. The truth, however, is that this is perfectly in-line with Microsoft thinking. As per the Microsoft .NET homepage:

Microsoft® .NET is a set of Microsoft software technologies for connecting information, people, systems, and devices. It enables a high level of software integration through the use of Web services—small, discrete, building-block applications that connect to each other as well as to other, larger applications over the Internet. … Building solutions with .NET technologies, you can create and connect to an infinite variety of personalized .NET experiences, with industry-standard technologies helping to protect your security and safety. Individuals can enjoy rich, tailored interactions—.NET experiences—when Web services are pulled together, allowing access to information across the Internet and from stand-alone applications, online or offline.

Microsoft, in its own words, says that value of .NET is not ASP.NET or C# or any particular language. Rather, the value proposition of .NET is the mechanism that allows you to build powerful and highly interoperable applications. .NET is far bigger than ASP.NET, just as J2EE is far bigger than JSP; ASP.NET is one way to leverage .NET, but it is not the only way.

So what exactly is .NET? It is a highly ambitious and incredibly powerful platform on which to build applications. At its core lies a foundation built on web services. Again, to quote Microsoft:

.NET is the Microsoft solution for Web services, the next generation of software that connects our world of information, devices, and people in a unified, personalized way. .…. .NET is a comprehensive family of products, built on industry and Internet standards, that provide for each aspect of developing (tools), managing (servers), using (building block services and smart clients) and experiencing (rich user experiences) Web services.

Web services play a vital role in the .NET world. Web services are not a Microsoft creation. Web services technology is built on open standards, like XML and SOAP, and every major player in the industry supports web services, including Macromedia. Web services are the plumbing used to facilitate distributed computing, regardless of the platform, server, or application back-end.

In other words, a commitment to .NET means a commitment to building applications that are open and extensible through SOAP and web services. A commitment to .NET in no way requires that you use any specific development language, not even ASP.NET. In fact, it is perfectly acceptable to mix and match technologies, to create hybrid applications using a mixture of best-of-breed and complimentary components. For example, the following are all valid forms of .NET use:

  • .NET servers providing all back-end functionality and all client code written in ASP.NET and VB.NET.
  • All back-end code running on a J2EE server, all data and processes exposed as web services written in Java, and client code written in ASP.NET and VB.NET.
  • .NET servers (including SQL Server) running on Windows, and client code created using JSP connecting to that database through JDBC.
  • .NET servers providing all back-end functionality, all data and processes exposed as web services written in C#, and client code written in Perl or PHP.

There is a pattern here. As articulated so clearly by Microsoft, .NET is all about web services, which means that mixing .NET with any other SOAP-enabled technology is all part of the commitment to .NET. .NET does not require unilateral commitment to Microsoft; .NET only requires a real commitment to the openness of web services and service-oriented development.