Chapter 1. Introducing the .NET Framework


.NET is Microsoft's strategy for developing large distributed software systems. A core component of .NET is the .NET Framework, a component model for the Internet. A component model allows separate software components written in different languages to be combined to form a functioning system.

The .NET Framework could be contrasted with Microsoft's Component Object Model (COM), which can be described as a component model for the desktop. COM was not originally designed to address issues associated with large distributed systems, such as security. In contrast, the .NET Framework has been built to address the issues associated with distributed programming from its very inception.

Likewise, the .NET Framework could be contrasted with the Object Management Group's (OMG's) Common Object Request Broker Architecture (CORBA). CORBA can be described as a programming model for the Internet. It provides an object-oriented architecture originally designed to build distributed systems. CORBA, however, was not originally designed as a component architecture, although extensions in CORBA 3 are designed to extend the model in this area.

Finally, the .NET Framework could be compared with Java, a programming language for the Internet. Java provides many of the same features that COM, CORBA and .NET do, except that it is designed for a single programming language. By comparison, the other architectures have always had the goal of supporting multiple languages at their core.

This chapter provides an introduction to and overview of the .NET Framework. It highlights one element of the .NET Framework, the Common Language Runtime (CLR), and discusses some of the issues that the CLR was created to address. It also focuses on the fact that the CLR is language agnostic ; all .NET languages are equal players as far as the framework is concerned . Note, however, that not all languages expose all of the CLR facilities to developers or fully express their facilities in the CLR. For example, Visual Basic requires language extensions, such as inheritance and exception handling, to better target the CLR. Because Version 1 of the CLR does not support generics, although Version 2 may, CLR does not support facilities such as templates in C++.

Before attempting to understand "what the .NET Framework is," it is important to understand "why .NET is." That is, it is important to identify the issues addressed by the .NET Framework. Armed with this knowledge, it becomes possible to understand why the .NET Framework's architecture is designed as it is and how best to utilize that architecture.



Programming in the .NET Environment
Programming in the .NET Environment
ISBN: 0201770180
EAN: 2147483647
Year: 2002
Pages: 146

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net