0% found this document useful (0 votes)
90 views

Framework

The .NET framework includes C# and VB.NET programming languages, the Common Language Runtime (CLR) that executes code and provides services like memory management, the .NET class library containing prebuilt functionality, ASP.NET for web applications, and Visual Studio .NET as an optional development tool. The CLR makes all .NET languages interoperable, prevents errors like "DLL hell", allows side-by-side execution of different component versions, and handles memory management through garbage collection. The .NET class library contains classes for common tasks like file input/output, data access, and XML processing. ASP.NET improves on ASP by using .NET languages instead of scripting, allowing dynamic updates, and supporting stateful applications
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
90 views

Framework

The .NET framework includes C# and VB.NET programming languages, the Common Language Runtime (CLR) that executes code and provides services like memory management, the .NET class library containing prebuilt functionality, ASP.NET for web applications, and Visual Studio .NET as an optional development tool. The CLR makes all .NET languages interoperable, prevents errors like "DLL hell", allows side-by-side execution of different component versions, and handles memory management through garbage collection. The .NET class library contains classes for common tasks like file input/output, data access, and XML processing. ASP.NET improves on ASP by using .NET languages instead of scripting, allowing dynamic updates, and supporting stateful applications
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

The .

NET Programming Framework


The starting point for any analysis of the .NET framework is the understanding that .NET is
really a cluster of different technologies. It includes:

 The .NET languages, which include C# and Visual Basic .NET, the object-oriented and
modernized successor to Visual Basic 6.0.
 The Common Language Runtime (CLR), the .NET runtime engine that executes all
.NET programs, and provides modern services such as automatic memory management,
security, optimization, and garbage collection.
 The .NET class library, which collects thousands of pieces of prebuilt functionality that
you can snap in to your applications. These are sometimes organized into technology
sets, such as ADO.NET (the technology for creating database applications) and Windows
Forms (the technology for creating desktop user interfaces).
 ASP.NET, the platform services that allow you to program web applications and Web
Services in any .NET language, with almost any feature from the .NET class library.
 Visual Studio .NET, an optional development tool that contains a rich set of productivity
and debugging features.

VB .NET, C#, and the .NET Languages


Visual Basic .NET (sometimes called VB .NET) is a redesigned language that improves
on traditional Visual Basic, and even breaks compatibility with existing VB programs. Migrating
to Visual Basic .NET is a stretch—and a process of discovery for most seasoned VB developers.
The change is even more dramatic if you are an ASP developer used to the scaled-down
capabilities of VBScript.
C#, on the other hand, is an entirely new language. It resembles Java and
C++ in syntax, but there is no direct migration path.

In short, C#, like Visual Basic .NET, is an elegant, modern language ideal
for creating the next generation of business applications. Interestingly, C# and
Visual Basic .NET are actually far more similar than Java and C# or Visual Basic 6
and VB .NET. Though the syntax is different, both use the .NET class library and
are supported by the Common Language Runtime.

Other .NET Languages

C# and VB .NET are not the only choices for ASP.NET development. When
creating a .NET web application, you can use any .NET language, including
JScript .NET or the Java-clone J# .NET .This increasing range of language choices
is possible because Microsoft has released a set of guidelines called the CLS
(Common Language Specifications)

The Common Language Runtime


The Common Language Runtime (CLR) is the engine that supports all the
.NET languages. Most modern languages use runtimes, such as msvbvm60.dll for
Visual Basic 6 applications and mscrt40.dll for C++ applications. These runtimes
may provide libraries used by the language, or they may have the additional
responsibility of executing the code (as with Java).

Runtimes are nothing new, but the CLR represents a radical departure from
Microsoft's previous strategy. To start, the CLR and .NET framework are much
larger and more ambitious.

The implications of the CLR are wide-ranging:

Deep language integration

C# and VB .NET, like all .NET languages, compile to a special Intermediate


Language called MSIL (or just IL). In other words, the CLR makes no distinction
between different languages
No more "DLL hell"

IL programs store extra information about their classes and the components
they require (called metadata). The CLR examines this information and
automatically prevents an application from using the wrong version of a
component.

Side-by-side execution

The CLR also has the ability to load more than one version of a component
at a time. In other words, you can update a component many times, and the correct
version will be loaded and used for each application.

Fewer errors

Whole categories of errors are impossible with the CLR. For example, 1-5
the CLR monitors memory, automatically removes objects that aren't being used
with its garbage collection, and prevents the wide variety of memory mistakes that
are possible with pointers and C++.

Along with these truly revolutionary benefits, there are some other potential
drawbacks, and some issues that haven't yet been answered:

Performance A typical ASP application will gain considerably in performance


because of various improvements, including automatic caching and precompiling..
Generally, this will be a factor only in a few performance-critical high workload
applications (like real-time games).

Code transparency The IL language is much easier to disassemble, meaning that


if you distribute a compiled component, other programmers may have an easier
time determining how your code works. This also isn't much of an issue for
ASP.NET applications, which aren't distributed, but are hosted on a secure web
server.

Cross-platform No one is entirely sure whether .NET is destined for use on other
operating systems and platforms. Currently, .NET programs will make the switch
to upcoming 64-bit versions of Windows without a problem.
The .NET Class Library
The .NET class library is a giant repository of classes that provide prefabricated
functionality for everything from reading an XML file to sending an email
message.

Some parts of the class library include features you'll never need to use (such as the
classes used to create desktop applications with the Windows interface).

Other parts of the class library are targeted directly at web development, enabling
Web Services, web form user interface, and countless other utility classes. These
include the base set of classes that define common variable types, and the classes
for file I/O, data access, and XML information, to name just a few.

Other characteristics of the .NET framework include:

Open standards Microsoft currently provides programming tools that allow you
to 1-6 work with many open standards, such as XML and SOAP. In .NET,
however, many of these standards are baked in to the framework. For example,
ADO.NET (Microsoft's data access technology) uses XML natively, behind the
scenes.

Disconnected model The .NET framework inherits many of the principles of


Microsoft's DNA programming model. This includes an emphasis on distributed
and Internet applications. Technologies like ADO.NET are designed from the
ground up for disconnected, scalable access, and don't need any special code to be
used in an ASP.NET application.

Emphasis on infrastructure Microsoft's philosophy is that they will provide the


tedious infrastructure so that application developers only need to write business
specific code. For example, the .NET framework automatically handles files,
message queues, databases, and remote method calls (through Web Services). You
just add the logic needed for your organization
ASP.NET
ASP.NET is a part of the .NET framework. As a programmer, you interact
with it by using the appropriate types in the class library to write programs and
design web forms. When a client requests a page, the ASP.NET service runs
(inside the CLR environment), executes your code, and creates a final HTML page
to send to the client.

Scripting limitations ASP applications rely on VBScript, which suffers from a


number of limitations. To overcome these problems, developers usually need to
add separately developed components, which add a new layer of complexity. In
ASP.NET, web pages are designed in a modern .NET language, not a scripting
language.

Headaches with deployment and configuration Because of the way COM and
ASP work, you can't easily update the components your web site uses. ASP.NET
introduces a slew of new features to allow web sites to be dynamically updated and
reconfigured.

No application structure ASP code is inserted directly into a web page along with
HTML markup. The resulting tangle has nothing in common with today's modern,
object-oriented languages.

State limitations One of ASP's strongest features is its integrated session state
facility. However, session state is useless in scenarios where a web site is hosted
by several separate web servers.

Visual Studio .NET


The last part of .NET is the optional Visual Studio .NET editor, which
provides a rich environment 1-7 where you can rapidly create advanced
applications. Some of its features include:

Automatic error detection You could save hours of work when Visual Studio
.NET detects and reports an error before you try to run your application. Potential
problems are underlined, just like the "spell-as-you-go" feature found in many
word processors.
Debugging tools Visual Studio .NET retains its legendary debugging tools that
allow you to watch your code in action and track the contents of variables.

Page design You can create an attractive page with drag-and-drop ease using
Visual Studio .NET's integrated web form designer.

IntelliSense Visual Studio .NET provides statement completion for recognized


objects, and automatically lists information such as function parameters in helpful
ToolTips

You might also like