Summary
In this chapter, we've attempted to provide a complete overview of what is
new and what has changed in ASP+, compared to earlier versions of ASP. ASP+
is the new generation of Microsoft's successful Active Server Pages technology,
and represents a real advance in ease of use and power.
ASP+ is designed to remove many of the existing limitations of ASP, such as
the dependence on script languages, poor support for object-oriented design
and programming techniques, and the need to continuously re-invent techniques
for each page or application you build. Instead, ASP+ combines the ability to
build more complex and powerful applications, with a reduced requirement for
the developer to write repetitive code. For example, the process of maintaining
values in HTML form controls and posting these values back to the server ('round
tripping') requires quite a lot of code to maintain the state within the page.
ASP+ does all this work for you automatically.
At the same time, the world out there is changing. The proportion of users
that will access your site through an 'Internet device' such as a mobile cellular
phone, personal digital assistant (PDA), TV set-top box, games console, or other
device will soon be greater that the number using a PC and a traditional Web
browser. ASP+ provides solutions that help to reduce the work required for coping
with these disparate types of client.
The rapidly changing nature of distributed applications requires faster development,
more componentization and re-usability, and wider general platform support.
New standards such as the Simple Object Access Protocol (SOAP) and new commercial
requirements such as business-to-business (B2B) data interchange require new
techniques to be used to generate output and communicate with other systems.
To meet all these requirements, ASP has been totally revamped from the ground
up into a whole new programming environment that includes:
- Pages that use the new server-side
controls to automate state management in the page, and reduce the code you
have to write.
- HTML Server-side Controls that
can be used to generate the HTML elements in the page output, and allow code
to be used to set the properties (i.e. attributes) of these controls at runtime.
They also allow events raised by the elements to be detected and appropriate
code executed on the server in response to these events.
- Rich Controls that run on the
server can be used to create more complex HTML elements and objects in the
page output. ASP+ includes a calendar control and a range of grid, table and
list controls. These controls can also take advantage of server-side data
binding to populate them with values.
- Web Services that allow developers
to create pages that are generally not rendered as visible output, but instead
provide services to the client. For example, they can include functions that
return specific values in response to a request.
- Better Configuration and Deployment,
with the use of human-readable XML-format configuration files. Components
no longer need to be registered on the server (using regsvr32), and applications
can be deployed using file copy commands, the FrontPage server extensions,
or FTP.
- Extended Application and Session
State Management that provides a persistent and more scalable environment
for storing values relevant to specific clients and applications.
- Improved Error Handling, Debugging,
and Tracing features. Each page can have its own 'error page', and can also
display values that are used in the page code as it executes, providing a
'trace' facility.
- New Security Management Features,
which allow many different kinds of login and user authentication to be used.
Instead of the default browser login prompt, custom login pages can be used
with Windows 2000 and NTLM authentication. It is also easier to manage users
depending on the role or group they belong to.
- Custom Server-side Caching allows
developers to store all kinds of values and objects locally on the server
for use in ASP+ pages. The runtime can also cache the output from ASP+
pages. This can provide a huge performance boost in situations where a dynamically
created page is the same for many visitors, such as a product catalog.
- A Range of Useful Components
are shipped with ASP+. These class libraries can help to make writing Web
applications easier. Examples include: the 'SendMail' component, encryption/decryption
components, components for defining custom performance counters, components
for reading and writing to the NT event log, components for working with MSMQ,
network access components (replacements for 'WinInet'), data access components,
etc.
In the remainder of this book, we'll examine all thee topics in more detail,
and show you how you can use ASP+ to build powerful and interactive Web-based
distributed applications more quickly and efficiently than ever before.