The final book in the series provides thorough coverage of building Web applications using .NET. Unlike other books about ASP.NET, this book gives attention to the whole process of Web application development. The book incorporates a review tutorial on classical Web programming, making the book accessible to the
.NET is Microsoft's vision of applications in the Internet age. .NET provides enhanced interoperability features based upon
Microsoft .NET is a platform built on top of the operating system. Three
Microsoft .NET provides:
The Common Language Runtime, a robust runtime platform.
Multiple language development, with no language being more preferred over any other.
The .NET Framework, an extensible programming model, which provides a very large class library of reusable code available to any .NET language.
Support for a networking infrastructure built on top of Internet standards that allows a high level of communication among applications.
Support for the new industry standard of Web Services. Web Services represent a new mechanism of application delivery that extends the idea of component-based development to the Internet.
ASP.NET, which allows you to use standard programming practices to develop Web applications.
A Deployment model that allows for versioning and the end of "DLL Hell."
A Security model that is easy for programmers to use in their programs.
An interoperability mechanism that enables .NET programs to access legacy code, including COM
Powerful development tools.
The World Wide Web has been a big catch-up challenge to Microsoft. Actually the Web coexists quite well with Microsoft's traditional strength, the PC. Through a PC application, the browser, a
The Web relies on standards such as HTML, HTTP, and XML, which are essential for communication among diverse users on a wide variety of computer systems and devices.
While complex, the Windows PC is quite standardized. While the Web is based on standard protocols, there is a Tower of Babel of multiple languages, databases, development environments, and devices running on top of those protocols. This exploding complexity of technology exacerbates a growing shortage of knowledge workers who can build the needed systems using the new technologies. .NET provides the infrastructure so that programmers can concentrate on adding value in their applications without having to reinvent solutions to common programming problems.
Originally the Web was a vast information repository. Browsers would make
XML provides a standard way of transmitting data independent of its formatting. XML can thus provide ways for companies to agree on standards for documents and information flows, such as purchase orders and invoices. E-commerce can then be automated among cooperating companies (B-to-B). XML, however, only describes the data; it does not supply the actions to be performed on that data. For that we need Web Services.
One of the most important aspects of .NET is the support for Web Services. Based on the industry standard SOAP protocol, Web Services allow you to expose your applications' functionality across the Internet. From the perspective of a .NET programmer, a Web Service is no different from any other kind of service implemented by a class in a .NET language. The programming model is the same for calling a function within an application, in a separate component on the same machine, or as a Web Service on a different machine.
This inherent simplicity will make it very easy for companies to create and host applications. If desired, a whole application could be completely outsourced, removing issues of development, deployment, and maintenance. Or you could use third-party Web Services that did not exist when you designed your application.
.NET includes a totally redone version of the popular Active Server Pages technology, known as ASP.NET. Whereas ASP relied on interpreted script code in languages with limited capabilities interspersed with page-formatting commands, ASP.NET code can be written in any NET language, including C#, VB.NET, JScript, and C++ with managed extensions. Since this is compiled code, you can separate your interface code from your business logic in a separate "code behind" file. Although C#, VB.NET, and JScript may be left as embedded script within the Web page, managed C++ must be placed in a code behind file.
ASP.NET provides Web forms, which vastly
Drag-and-drop in Visual Studio.NET makes it very easy to lay out forms. You can add code to form events such as a button click.
ASP.NET will automatically detect browser capability. For high-end browsers code processing can be performed on the client. For low-end browsers the server does the processing and generates standard HTML. All this is done
The combination of Web Services and compiled full-blown languages such as C#, VB.NET, and managed C++, allows Web programming to follow an object-oriented programming model, which had not been possible with ASP scripting languages and COM
The modern computing environment contains a vast variety of hardware and software systems. Computers range from mainframes and high-end servers to workstations and PCs and to small mobile devices such as PDAs and
In the modern environment, few applications are an island unto
TCP/IP sockets is highly standard and widely available. Too much detail, however, has to be mastered, for programmers to be productive in writing robust distributed applications. Somewhat higher is the remote procedure call (RPC), but RPC is still very complex, and there are many flavors of RPC. Popular are higher level protocols, such as CORBA, RMI, and DCOM. These are still complex, and require special environments at both ends. These protocols suffer other disadvantages, such as difficulty in going across firewalls.
One communication protocol has become ubiquitous: HTTP. For this reason, Microsoft, IBM, and other