Microsoft .NET (Microsoft dotNet) is a set of Microsoft software
technologies for connecting your world of information, people, systems,
and devices.
A D V E R T I S E M E N T
It enables an unprecedented level of software integration
through the use of XML Web services: small, discrete, building-block applications that connect
to each other�as well as to other, larger applications�via the Internet.
The Goal
The goal that Microsoft has set itself is ambitious, to say the least,
both in technical and strategic terms. The new .NET platform has not evolved from the DNA 2000
technology currently available; rather, it is a totally
new technology which is likely to shake up more than a few deep-rooted ideas.
.NET is an entirely new platform and technology which introduces a host of new products,
whose compatibility with existing technology is not always guaranteed.
It offers support for 34 programming languages, which share a hierarchy of classes providing
basic services. .NET applications no longer run in native machine code,
having abandaned Intel x86 code in favor of an intermediate language called MSIL which runs
in a sort of virtual machine called the Common Language Runtime (CLR).
In addition, .NET makes intensive use of XML, and places a lot of emphasis on the SOAP protocol.
Thanks to SOAP, Microsoft is hoping to bring us into a new era of programming which,
rather than relying on the assembly of components or objects, is based on the reuse of services.
SOAP and Web Services are the cornerstones of the .NET platform.
Microsoft .Net (Microsoft dotNet) aims to reduce the cost of software development by creating
re-useable code that can be used by all applications in the environment,
regardless of operating system or programming language.
You may develop (or purchase) a Microsoft .Net (Microsoft dotNet) web based application
that takes new sales orders over the Internet. Dot net will allow you to call the logic behind
the application from any other program. For example Microsoft Excel or Word macros
could directly call the web based application to create new sales order.
A customer could easily and securely develop their own application interface that
directly and securely places a new sales order on your website.
Microsoft .NET Framework is a computing platform for developing distributed
applications for the Internet. Following are the design goals of Microsoft .NET
Framework:
To provide a very high degree of language interoperability
To provide a runtime environment that completely manages code execution
To provide a very simple software deployment and versioning model
To provide high-level code security through code access security and
strong type checking
To provide a consistent object-oriented programming model
To facilitate application communication by using industry standards such
as SOAP and XML.
To simplify Web application development
.NET is multi-language
With the .NET platform, Microsoft will provide several languages and the associated compilers,
such as C++, JScript, VB.NET (alias VB 7) and C#, a new language which emerged with .NET.
Third party vendors working in partnership with Microsoft are currently developing compilers
for a broad range of other languages, including Cobol, Eiffel, CAML, Lisp, Python and Smalltalk.
Rational, vendor of the famous UML tool Rose, is also understood to be finalizing a Java compiler
for .NET.
Applications are hardware-independent
All these languages are compiled via an intermediate binary code, which is independent
of hardware and operating systems. This language is MSIL: Microsoft Intermediate
Language. MSIL is then executed in the Common Language Runtime (CLR),
which basically fulfills the same role as the JVM in the Java platform.
MSIL is then translated into machine code by a Just in Time (JiT) compiler.
Applications are portable
Applications compiled as intermediate code are presented as Portable Executables (PEs).
Microsoft will thereby be able to offer full or partial implementations of
the .NET platform over a vast range of hardware and software architectures:
Intel PCs with Windows 9x, Windows NT4, Windows 2000 or future 64 bit Windows versions,
microcontroller-based PDAs
with PocketPC (e.g. Windows CE), and other operating systems too, no doubt.
All languages must comply with a common agreement
Existing computer languages are heterogeneous: some are procedural, others object-oriented,
some authorize use of optional parameters or a variable number of parameters,
some authorize operator overload, others do not, and so it goes on.
For a language to be eligible for the range of languages supported by the .NET platform,
it must provide a set of possibilities and constructions listed in
an agreement called the Common Language Specification, or CLS. To add a language
to .NET, all that is required in theory is for it to meet the requirements of the CLS,
and for someone to develop a compiler from this language into MSIL.
The fact that all the .NET languages are compiled in the form of an intermediate code
also means that a class written in a language may be derived in another language,
and it is possible to instantiate in one language an object of a class written in another language.
Keywords:design patterns, net objectives certification, net objectives 2005,
net objectives software development