|
|
|
Microsoft's .NetWhat exactly is .Net? (May 2002 issue)
At heart, .Net is an architecture for distributed computing. In the late 1970s
and early 1980s, distributed computing was a hot topic. Hewlett-Packard offered
software for its HP-3000 minicomputers that allowed an application running on one
machine to talk to an application running on one or more remote machines. The
machines were typically connected via dialup modems. In a typical environment,
the local application might be a corporate management-reporting program, and the
remote program might be a division inventory database inquiry program. The former
would ask for data from the latter in order to generate an up-to-the-minute
report. The protocols used between the two programs were proprietary to HP.
Now skip ahead 20 years. The Internet replaces the dialup modems; pieces of code
running on PCs, servers and handhelds replace the dedicated application programs;
and industry standards such as XML and SOAP replace the proprietary protocols. In
a typical environment, the local application might be an inventory-lookup
program, and the remote program might be a corporate inventory management system.
The latter publishes a "web service" that allows the former to make a remote
procedure call to check real-time inventory levels. The vocabulary is entirely
different, but the end goal is the same - distributed computing.
As an example of web services that's much closer to home, today you can use Excel
to check stock quotes using the "Delayed Stock Quote" web service, one of many
web services provided by Xmethods. An article
published in the MSDN library
provides the details.
Looking at the forest instead of the trees, it's clear that computers,
communications, applications and services are no longer separate things, but are
really parts of a larger environment. The environment has many characteristics,
including data (e.g., email & pictures), preferences (e.g., buddy lists & network
priorities), notifications (e.g., events & people presence), and security (e.g.,
multiple accounts & passwords). .Net is a concept that spans this environment and
provides technologies and tools to access it and interact with it.
Protocols One of the basic building blocks of the .Net architecture is a
set of standard protocols that allow all network entities to interact. .Net makes
use of four key standards, as follows:
HTTP: Hyper Text Transfer Protocol, the underlying protocol used by the
World Wide Web. It defines how messages are formatted and transmitted, and what
actions Web browsers and servers should take in response to various commands.
XML: Extensible Markup Language, a specification developed by the World
Wide Web Consortium (W3C). XML is a system for organizing and tagging elements of
a Web document. Because it allows designers to create their own customized tags,
it enables the definition, transmission, validation and interpretation of data
between applications and organizations.
SOAP: Simple Object Access Protocol, a way for applications to communicate
with each other over the Internet, independent of platform. SOAP relies on XML to
define the format of the information to be communicated, and then adds HTTP
headers to send it.
UDDI: Universal Description, Discovery and Integration, an XML-based
distributed Web directory that enables businesses (services) to list themselves
on the Internet and discover each other. UDDI is similar to a traditional phone
book's yellow and white pages. UDDI uses WSDL (Web Services Description Language)
to describe a Web service's capabilities as collections of communication
endpoints capable of exchanging messages. [Source: http://www.webopedia.com]
One of the main benefits of the .Net Framework is that it allows developers to
use the same tools, languages, APIs and programming models to create an
application, regardless of the device on which it runs -- PC, server, handheld
device, set-top box, or whatever. This is a big change from the present
situation, where different tools are required for each environment. The result is
an increased ability to develop applications and services that span devices
(think of the forest and all those trees again).
Visual Studio .Net is Microsoft's latest development tool. It's the primary tool
that developers use to create applications on CE .Net. One of the toolkits in
this product-the Mobile Internet Toolkit-sounds particularly promising. Using it,
drag-and-drop construction of a Visual Basic application can produce a graphical,
interactive Web page that is immediately accessible by wireless link from a
Pocket PC. Smart Device Extensions (SDE), an add-on to Visual Studio .Net due for
beta release later in 2002, will allow developers to easily create Pocket PC or
other CE .Net device applications which can access and use Web services.
The programming languages supported by Visual Studio .Net when developing for CE
.Net devices include Visual Basic .Net 4.0, Visual C++ .Net 4.0, and Visual C#
.Net 4.0 ("C Sharp" is a new programming language designed specifically to take
advantage of the .Net Compact Framework). These are all-new language compilers;
the existing compilers are not supported under CE .Net. In fact, applications
created with the current eMbedded Visual Basic (3.0) won't run at all under CE
.Net, since it's an interpreted language, while the new Visual Basic .Net is a
complied language. It's also interesting to note that applications created with
these new compilers won't run on CE 3.0. No pain, no gain.
For More Information |
|
|
All contents ©1995-2002 Pen Computing Magazine, Inc. All rights reserved. Unauthorized reproduction in any form is strictly prohibited. Contact the Pen Computing Publishing Office for reprint information. |