Está en la página 1de 6

What is .NET?

I was having lunch recently with a colleague when he asked, “Are you still messing
around with that .NET stuff?” I could tell by the tone of his voice that he—like many
computer users—still viewed .NET with suspicion.

And perhaps with good reason. Purposefully kept separate from the Windows
operating system, the 22MB Microsoft .NET Framework is an hour download on dialup
and four minutes on broadband. For .NET developers, this extra step adds one more
hurdle for a potential customer to overcome when purchasing our software.

So in this article I attempt to demystify .NET, encourage you to download the latest
version of the .NET Framework so you can run the latest and greatest .NET software,
and help convince Microsoft that it needs to ensure every PC user has the newest
.NET.

What is Microsoft .NET?


Microsoft .NET is simply something you need on your Windows PC to run our
software.

OK, really, what is .NET?


Microsoft .NET (pronounced “dot net”) is a software component that runs on the
Windows operating system. .NET provides tools and libraries that enable developers
to create Windows software much faster and easier. .NET benefits end-users by
providing applications of higher capability, quality and security. The .NET Framework
must be installed on a user’s PC to run .NET applications.

This is how Microsoft describes it: “.NET is the Microsoft Web services strategy to
connect information, people, systems, and devices through software. Integrated
across the Microsoft platform, .NET technology provides the ability to quickly build,
deploy, manage, and use connected, security-enhanced solutions with Web
services. .NET-connected solutions enable businesses to integrate their systems more
rapidly and in a more agile manner and help them realize the promise of information
anytime, anywhere, on any device.” See Microsoft for more information.

What is the .NET architecture?


Microsoft .NET consists of four major components:

• Common Language Specification (CLS) – blue in the diagram below


• Framework Class Library (FCL) – red
• Common Language Runtime (CLR) – green
• .NET Tools – yellow
At the base of the diagram in gray is the operating system, which technically can be
any platform but typically is Microsoft Windows 2000 or greater, accessed through
the Win32 API (Application Programming Interface).

Common Language Specification (CLS)

The CLS is a common platform that integrates code and components from multiple
.NET programming languages. In other words, a .NET application can be written in
multiple programming languages with no extra work by the developer (though
converting code between languages can be tricky).

.NET includes new object-oriented programming languages such as C#,Visual


Basic .NET, J# (a Java clone) and Managed C++. These languages, plus other
experimental languages like F#, all compile to the Common Language
Specification and can work together in the same application.

Framework Class Library (FCL)

The FCL is a collection of over 7000 classes and data types that enable .NET
applications to read and write files, access databases, process XML, display a
graphical user interface, draw graphics, use Web services, etc. The FCL wraps much
of the massive, complex Win32 API into more simple .NET objects that can be used
by C# and other .NET programming languages.

Common Language Runtime (CLR)

The CLR is the execution engine for .NET applications and serves as the interface
between .NET applications and the operating system. The CLR provides many
services such as:

• Loads and executes code


• Converts intermediate language to native machine code
• Separates processes and memory
• Manages memory and objects
• Enforces code and access security
• Handles exceptions
• Interfaces between managed code, COM objects, and DLLs
• Provides type-checking
• Provides code meta data (Reflection)
• Provides profiling, debugging, etc.

.NET Tools

Visual Studio .NET is Microsoft’s flagship tool for developing Windows software. Visual
Studio provides an integrated development environment (IDE) for developers to
create standalone Windows applications, interactive Web sites, Web applications, and
Web services running on any platform that supports .NET.

In addition, there are many .NET Framework tools designed to help developers
create, configure, deploy, manage and secure .NET applications and components.

What is the history of .NET?


.NET started as a classic Microsoft FUD operation. In the late 1990s, Microsoft had
just successfully fought off a frontal assault on its market dominance by killing the
Netscape Web browser with its free Internet Explorer. But Microsoft was facing a host
of new challenges, including serious problems with COM, C++, DLL hell, the Web as a
platform, security, and strong competition from Java, which was emerging as the go-
to language for Web development.

Microsoft started building .NET in the late 90s under the name “Next Generation
Windows Services” (NGWS). Bill Gates described .NET as Microsoft’s answer to the
“Phase 3 Internet environment, where the Internet becomes a platform in its own
right, much like the PC has traditionally been… Instead of a world where Internet
users are limited to reading information, largely one screen at a time, the Phase 3
Internet will unite multiple Web sites running on any device, and allow users to read,
write and annotate them via speech, handwriting recognition and the like,” Gates
said. We are certainly approaching that vision.

Microsoft announced .NET to the world in June 2000 and released version 1.0 of
the .NET framework in January 2002. Microsoft also labeledeverything .NET including
briefly Office to demonstrate its commitment and dominance on this new thing called
the Web. But out of that grand FUD campaign emerged the very capable and
useful .NET development environment and framework for both the Web and Windows
desktop.

What are the benefits of .NET?


.NET provides the best platform available today for delivering Windows software.
.NET helps make software better, faster, cheaper, and more secure. .NET is not the
only solution for developing Web software—Java on Linux is a serious alternative. But
on the Windows desktop, .NET rules.

For developers, .NET provides an integrated set of tools for building Web software
and services and Windows desktop applications. .NET supports multiple programming
languages and Service Oriented Architectures (SOA).

For companies, .NET provides a stable, scalable and secure environment for software
development. .NET can lower costs by speeding development and connecting
systems, increase sales by giving employees access to the tools and information they
need, and connect your business to customers, suppliers and partners.

For end-users, .NET results in software that’s more reliable and secure and works on
multiple devices including laptops, Smartphones and Pocket PCs.

Why are you (this blog author) developing in .NET?


The Mini-Tools developers were impressed with the Microsoft .NET technology and
development platform and felt it provided the best environment with which to build
and deliver innovative desktop and Web software for Windows. All of our software is
written in C# for .NET on Windows.

Why should I install .NET on my computer?


Because many new software applications require .NET. Having the latest
version already installed on your computer enables you run new .NET applications
immediately as they become available.

Which versions of .NET are available?


The newest version available today is NET v3.0, but most PC users have v2.0
installed.

Although .NET v3.0 is now available, Windows Update is not automatically installing
it, hence few people have it. People who purchase new PCs with Windows Vista pre-
installed will receive the latest .NET v3.0 but there may be some versioning issues.
Microsoft released a beta version of .NET v3.5 in April 2007.

Following are the production versions of .NET:

Version Name Version Number Release Date


1.0 1.0.3705.0 2002-01-05
1.0 SP1 1.0.3705.209 2002-03-19
1.0 SP2 1.0.3705.288 2002-08-07
1.0 SP3 1.0.3705.6018 2004-08-31
1.1 1.1.4322.573 2003-04-01
1.1 SP1 1.1.4322.2032 2004-08-30
2.0 2.0.50727.42 2005-11-07
3.0 3.0.4506.30 2006-11-06

How do I know if I already have .NET?


We have queried your Web browser, and it tells us that you have the following .NET
versions installed on your PC (note this only works for Internet Explorer):

Another way to check if you have .NET:

1. Click Start on your Windows desktop.


2. Select Control Panel.
3. Double-click Add or Remove Programs.
4. When the Add/Remove window appears, scroll through the list of applications
and try to find Microsoft .NET Framework. There you will see which versions
of .NET are installed on your PC.

Where can I get .NET?


Microsoft .NET is available as a FREE download from Microsoft.

Why is .NET separate from the Windows operating


system?
Another way to ask this question is, "Why doesn't Microsoft ensure every Windows PC
has the latest version of .NET installed?" Since .NET is so important to Windows, and
Microsoft delivers both .NET and Windows, why doesn't Microsoft simply make .NET
part of Windows?

Just my theory, but it probably stems from the Sun vs. Microsoft bad blood over
Java. Sun and Microsoft got into a legal spat, Microsoft stopped shipping Java with
Windows, and so now Java is a separate download for Windows users. As a result,
perhaps Microsoft is wary of appearing monopolistic, hence they maintain the .NET
Framework as a separate download too.

Why is this a problem? Because it is a large file that must be downloaded and
installed separately, naturally many people view .NET with suspicion or at least
hesitation. And this provides an inconvenience and yet another barrier for a potential
customer purchasing our .NET software. So here's my plea:

Microsoft, please include the latest version of .NET as an automatic


download to every Windows PC as part of the normal Windows Update
process. Thank you.
Will .NET cause problems on my computer?
No. Once .NET is installed, you do not have to do anything to manage it, and .NET
should not adversely affect the operation of your computer.

What should I do now?


Download and install the latest version of .NET! :-)

Links
• Download .NET
• .NET FAQ
• .NET Developer Center
• .NET Basics
• .NET in Wikipedia
• .NET vs. Java
• What Is .NET
(Or, How I Learned to Stop Worrying and Love the Runtime)

También podría gustarte