After being thrashed in the enterprise software market by the likes of Sun Microsystems Inc., IBM and Linux, Microsoft Corp. is pinning its comeback hopes on its new application framework, .Net. Although the freedom to use practically any programming language is key to .Net's appeal, developers are most excited about C#, the C++ derivative that Microsoft created with .Net in mind. The disruptive potential of these technologies is enormous because they change the rules for all types of Windows development, from desktop software to Web-enabled enterprise solutions.
Most of the changes are for the better. The .Net framework and C# extend Windows' reach by making powerful but often-overlooked Windows facilities -- including messaging, transactions and XML -- more accessible to developers. The combination of C# and Visual Studio.Net make the creation and deployment of Web services almost automatic. And Web applications written for ASP.Net and deployed to Internet Information Server 6.0 -- the Web server component of Windows.Net -- will enjoy substantial performance, stability and scalability advantages over traditional Active Server Pages (ASP) applications.
News source: ComputerWorld - Microsoft .Net and C#
Most of the changes are for the better. The .Net framework and C# extend Windows' reach by making powerful but often-overlooked Windows facilities -- including messaging, transactions and XML -- more accessible to developers. The combination of C# and Visual Studio.Net make the creation and deployment of Web services almost automatic. And Web applications written for ASP.Net and deployed to Internet Information Server 6.0 -- the Web server component of Windows.Net -- will enjoy substantial performance, stability and scalability advantages over traditional Active Server Pages (ASP) applications.
Although worthwhile, .Net's benefits will exact a heavy cost. Current Windows developers will need expensive retraining. Visual Basic coders will be stunned by significant language changes and the complexity of the massive .Net framework. C++ programmers will applaud C#'s adherence to tenets of their pet language, but they may also find themselves bewildered by sweeping language and application programming interface changes.
Alterations to the JScript language, the elimination of VBScript and the deprecation of Component Object Model interfaces to system services will add up to lots of hours spent recoding existing Web applications for ASP.Net. Rerouting an existing Java project to .Net, even if you use J# (Microsoft's Java-language implementation), will add several months to the project's rollout target. A server shift from Unix to Windows will call for new skills across the entire IT staff, affecting systems and database administrators alike.
With all this in mind, it's easy to understand why .Net and C# inspire a mix of interest and caution. But for companies already doing Windows development, adopting .Net isn't a question of whether, but when. Financial justifications for delaying migration will eventually be steamrolled by pressure from developers, business partners, application service providers and tools suppliers.
Getting Windows developers aboard the .Net express is a bagatelle compared with the challenge of winning over Java, Unix and Linux devotees. Playing against Java and Java 2 Enterprise Edition (J2EE), .Net has two primary trump cards: Visual Studio.Net and Web services. The beta of the Visual Studio.Net integrated development environment (IDE), due in early 2002, is already a huge hit with developers, and it could continue to give Windows an edge over Java in the race to Web services.
Technically, Visual Studio.Net isn't required for .Net or C# development, but it has a slick, responsive, programmer-friendly interface and cuts through .Net's complexity so well that it's practically a necessity. Java lacks a predominant IDE, and this could be spun to Microsoft's advantage. It takes time and money to get a team of Java developers trained on the company's chosen tools, and it would be difficult to assemble a combination of Java tools that rivals the productivity benefits of Visual Studio .Net.
Web services are so conceptually simple -- remote object access via HTTP and XML -- that one might wonder how Microsoft can score its implementation of Web services as a major win over J2EE. Indeed, there are several ways to create Web services in Java. What sets .Net, Visual Studio.Net and C# apart is that their designs revolve around making Web services easier to create and consume. Visual Studio.Net reduces the discovery, creation, deployment and use of Web services to point-and-click operations.
Microsoft's new enterprise technologies will certainly create turmoil as companies involved in Windows development adjust to the changing landscape. The combination of .Net and C# will also have an unsettling influence in some non-Windows shops, forcing the review of long-standing assumptions about Windows' role in their operations. Java and Unix are well-established, but their reign as unchallenged rulers of the enterprise software domain is coming to an end.

Commenting has either been disabled on this article or you are not logged in. Click here to login or register, its free!
Note: Anonymous commenting is disabled in order to keep the quality of responses to a high standard.