Computing in the real world
SEARCH FOR: IN:
Guest  Level 00    Register Log in

Real World Computing

Starting .Net

20th December 2005 [PC Pro]

2 Common Language Runtime (CLR). The CLR is the managed code environment in which all .NET applications run, and it lies at the very heart of .NET. The CLR manages the execution of all .NET application code, which includes imposing both data type safety and code access security to lessen the risk of crashes, memory leaks and malware attacks. The CLR manages memory and other resource allocation and de-allocation, threads, objects and garbage collection. It also contains the Just In Time (JIT) compiler (nicknamed the Jitter) and the Class loader for handling the intermediate code generated by .NET programming languages.

3 Base Class Libraries (BCL). .NET comes with a large number of base class libraries, containing the fundamental built-in features that developers use to build .NET applications. In effect, the BCLs form the API that .NET applications use to deliver their functionality. The BCLs are run-time DLLs that get installed automatically when you install the .NET Framework and reside in a .NET version-dependent folder named %winroot%\Microsoft.NET\Framework\. For example, the BCLs for .NET V1.1 are located in %systemroot%\Microsoft.NET\Framework\v1.1.4322. These class libraries are defined in more detail in MSDN's online library at msdn.microsoft.com (aka tinyurl.com).

4 ADO.NET and XML. These are two important 'glue' technologies. Web Services, which form a key part of .NET, communicate using XML, while ADO.NET is the latest in the long line of methods application developers use to access databases.

5 Web Forms/Web Services/ASP.NET. These three components provide developers with the ability to create web applications (accessible via a browser) as well as XML-based Web Services. I'll be writing much more in future columns about ASP.NET.

6 Windows Forms. A set of classes used for creating Windows-based applications that Microsoft calls 'smart applications'.

7 Common Language Specification (CLS). The CLS defines the language features that must be provided by all .NET programming languages. The CLS is a subset of the Common Type System (CTS), which provides basic data types (integer, floating point numbers, strings and so on) that, via the CLS, are consistently implemented across all .NET languages.

8 Languages. Under .NET, all programming languages compile down to the same intermediate code that gets executed by the CLR, so you can choose from a wide variety of languages to develop .NET applications, based on your preferences and previous skills. Most .NET developers choose either C# or VB.NET, but there are over 40 others to choose from, including Cobol if you must.

9 Visual Studio. An integrated development environment, which Microsoft regards as both a product differentiator and a productivity aid. The marketing hype suggests that while programming in .NET is already more efficient than using traditional Win32 language like C++ or Visual Basic, Visual Studio makes it better still. Visual Studio 2005, due for release towards the end of 2005, contains significant enhancements, including Visual Studio Team Services and Visual Studio Tools for Office, both of which I'll be talking about in a future column.

So that's a brief overview of the .NET architecture. Do you really need to know about this stuff? Yes, if you want to manage and secure .NET applications.

Continued....