Archives > dot NET
Simply put .NET is a new and innovative architecture that has a wide variety of
uses. It makes mobile devices, connectivity and information a lot more
accessible and easy to handle.
It's a programming infrastructure for the net and a whole new user experience.
.NET is aimed at making your data simultaneously available on your PC and on all
your wireless devices like PDAs and cell phones. It promises to bring together
the functionality of various software applications like Word and Excel through
the magic of XML. It introduced new concepts and new terminologies.
Web Services, another part of the .NET architecture, allows software to be put
on the web and immediately become accessible to other software that need
similar services. Word and Excel for example, would become Web services, and
everyone connected to Web Service can use them. It comes with the promise of
allowing functionality of different applications from within each other (like
using a spreadsheet within Word) without opening up a new application.
A few glimpses of what .NET can do is gleaned through products
that are coming soon from Microsoft:
-
The Samsung Smart Phone promises to turn your phone into something like a PDA,
letting you access your data (contact information, e-mail, etc.) even when the
phone is switched off.
-
The Tablet PC is a computer that looks like a flat-screened magazine for
reading e-books. It allows you to annotate pages in your own handwriting, and
search through your handwritten notes.
Statements of intent aside, it's hard to explain what .NET is all about if you
do not have a qualified background. Let me try to describe .NET to
non-technical people.
Inside all computers, there is a constant cycle of program modules asking other
modules questions, and getting back answers. Mouse clicks, keyboard key-clicks,
or any other ways of input to the computer launch thousands of these software
conversations. Similar to any other conversation, the conversationalists must
agree on a common language. If one knows German, and the other doesn't, there
can be no conversation. In IT, these modules are called Procedures. When one
Procedure asks another Procedure something, it is said to "call" it.
When computers are put on a network, all that is happening is one Procedure
asking a Procedure sitting on another machine. These are called Remote
Procedure Calls, or RPCs. Until .NET came out, it mattered very much which
language software was written in, or on what Operating System it was meant to
run under. Windows, Macintosh, Unix, all talked different languages. So like
the German in Australia, they could connect at some level (for example the web)
but to have a more sophisticated conversation, there had to be a better
agreement between them.
Until .NET came along, conversation between technologists was more like a
playground conversation. Sun said, "You have to use Java". Microsoft
said "Use DCOM". Everyone else sat back waiting for something
interesting to happen. SOAP was one common language agreed on by many
technologists. Everybody at the playground started saying, "Lets work
together. Lets agree that this is the way Procedure Calls are made over the
Internet. Let's standardize."
Whatever Microsoft says to the contrary, not much progress has been made by
.NET. In many respects, it is still a case of playground conversation. All that
Microsoft is now saying is:
"We now have a common language. We want to talk this language. Would you
all like to talk with us?".
This is not much different from earlier assertions like "You have to use
Java", et al. But let us not haggle. Let us see what they want to talk
about. They say that information can be stored in a single place, and made
accessible through, for example, Microsoft Passport. The question is, do we
want to give out our personal information to Microsoft? Can we agree with
Microsoft on how they do this? Can we operate a Microsoft Passport compatible
server?
There are many other things that they want to talk about. Please check out the
Microsoft website for more information. To make a long story short, .NET is yet
another attempt at a common language.
Here is what Microsoft's press release had to say about
Windows.NET:
"Windows.NET is the next generation of Windows. Windows.NET will be a
product that supports productivity, creativity, management, entertainment, and
much more. It's designed to put users in control of their digital lives. It
incorporates new .NET user experience technologies, is tightly integrated with
.NET building block services -- including identity and search -- and provides
integrated support for digital media.
Windows.NET will be self-supporting, featuring services that provide ongoing
support and updates as users need them. Windows.NET will provide a rich
foundation for developers who want to create new .NET applications and
services. It will offer a programmable user experience that can be customized
by corporations and individuals and programmed by .NET services, including
MSN.NET, bCentral for .NET and Office.NET, as well as a host of third-party
.NET services.
The first release of Windows to incorporate .NET elements is scheduled to be
available in 2001. Microsoft will also continue to offer support for versions
of the Windows platform without .NET services."
This sounds good.
Another part of the .NET architecture is the .NET Framework which combines the
power and strength of all the accumulated experience of Microsoft in
programming languages. It therefore has the power of many programming languages
rolled into one.
It is not just a programming language, it is more than that. It does not have a
fixed language that you need to code for it. You can code in C, C++, Java,
COBOL, VB, or any language of your choice. .NET Framework is the base that
allows all those languages to be compiled to what is known as IL-Code
(Intermediate-Language code).
IL is a new terminology that simply describes an application or service in a
structured language, similar to assembly. This then goes through an interpreter
which, in turn, compiles and executes it on the fly. The concept is very
similar to Java's Class Files. IL code allows wide portability across platforms
that support Common Language Runtime (CLR). CLR is basically the .NET Framework
itself, which include base classes and other components needed to create
applications of such sorts.
Another feature implemented into the CLR is the garbage collector. It's a very
useful feature that releases heaps of unused memory allocated to processes that
have run out their lifecycles. It automatically collects and frees memory used
by obsolete threads, processes and database connections.
The real glitch, then, is with regard to Microsoft itself. The public perceives
Microsoft as a sneaky company - with a few things they've done like including
adding tracking code to Word DOC files. .NET definitely shares this negative
image. The whole thing is not going to be seen as a 24 x 7 world of online
bliss. Instead it's seen as a 24 x 7 version of "Big Brother
Watching". People don't like being monitored. Not because they have
anything to hide. But because it is plain and simple creepy. Humans don't like
staring and being stared at.
All in all, sounds interesting! Happy .NET-ing
|