The driving force behind Microsoft® .NET is a shift in focus from individual Web sites
or devices to new constellations of computers, devices, and services that work together to
deliver broader, richer solutions.
The platform, technology that people use is changing. Since 1992, the client/server
environment has been in place, with people running the applications they need on the
Win32 platform, for example. Information is supplied by the databases on the servers,
and programs that are installed on the client machine determine how that information is
presented and processed.
One of the things people are looking for is a one-sentence definition of “.NET”. What is
it? Why should I care? .NET is Microsoft’s strategy for software that empowers people
any time, any place, and on any device.
Many of the goals Microsoft had in mind when designing .NET reflect the limitations we
previously discussed for development with previous tools and technologies.
Model A related goal is to have development for the internet
environment look very much like development for other types of software. Likewise,
developing user interfaces in Windows Forms is very similar to developing them in
Web Forms. There are commonly used controls, such as Labels and Text Boxes, in
both, with similar sets of properties and method. The amount of commonality makes
it easy to transition between the two types of development, and easier for traditional
VB developers to start using Web Forms.
The Vision of Microsoft.NET is globally distributed systems,
using XML as the universal glue to allow functions running on different computers
across an organization or across the world to come together in a single application. In
this vision, systems from servers to Wireless Palmtops, with everything in between,
will share the same general platform, with versions of .NET available for all of them,
and with each of them able to integrate transparently with the others.
Richer User Interface
Web Forms are a giant step towards much richer web-based
user interfaces. Their built-in intelligence allows rich, browser-independent screens to
be developed quickly, and to be easily integrated with compiled code. Microsoft has
announced an initiative for the future called the Universal Canvas which builds upon
the XML standards to transform the internet from a Read only environment into a
read/write platform, enabling users to interactively create, browse, edit and analyze
information. The universal canvas can bring together multiple sources of information
anywhere in the world to enable seamless data access and use.(The universal canvas
will log on to the Ms System of servers whenever the new device is turned on)
Centrally controlled OS, Office and Visual Studio.
Executable modules in .NET are self-describing. Once the
Common Language Runtime (CLR is explained in next sections) knows where a
module resides, it can find out everything else it needs to know to run the module,
such as the module’s object interface and security requirements, from the module
itself. That means a module can just be copied to a new environment and immediately
Support for Multiple Languages
The CLR executes binary code called MSIL
(Microsoft intermediate language), and that code looks the same regardless of the
original source language. All .NET –enabled languages use the same data types and
the same interfacing conventions. This makes possible for all .NET language to
interoperate transparently. One language can call another easily, and languages can
even inherit classes written in another language and extend them current platform has
anywhere near this level of language interoperability.
The completely object based approach of .NET is designed to allow
base functionality to be extended through inheritance ( unlike COM) and the
platform’s functionality is appropriately partitioned to allow various parts( such as the
just-in-time compilers discussed in the next section) to be replaced as new versions
are needed. It is likely that, in the future, new ways of interfacing to the outside world
will be added to the current trio of windows Form, Web Forms, and Web Services
such as universal Canvas.
Portability of compiled Applications
.NET allows the future possibility of moving
software to other hardware and operating system platforms. The ultimate goal is that
compiled code produced on one implementation of .NET (such as Windows) could be
moved to another implementation of .NET on a different operating system merely by
copying the compiled code over and running it.
Integrity with COM
.NET integrates very will with COM-based software. Any COM
component can be treated as a .NET component by other .NET components. The
.NET Framework wraps COM components and exposes an interface that .NET
components can work with. This is absolutely essential to the quick acceptance of
.NET, because it makes .NET interoperable with a tremendous amount of older