ASP   «Prev  Next»

Lesson 1

Classic Active Server Pages

As a user of the Web, you focus your attention on the operations of your browser and may believe that Web servers[1] are simply warehouses of static HTML Web pages. The truth is that Web servers often are active participants in the browser-server Web dialog. Active Server Pages (ASP) is an environment for designing and running server-based Web applications[2]. ASP makes it easier to write programs that talk to both Web browsers and Web servers and respond with different information at different times in different situations. With ASP, programmers can create information dynamically at the time it is requested by the browser.

This module will introduce you to the language, concepts, and creation of Active Server Pages. By the time you complete this module, you will be able to:
  1. Create, initialize, and display ASP
  2. Constant: A placeholder that is assigned a single, unchanging value. and variables
  3. Construct ASP functions and statements
  4. Insert an ASP script into an HTML page and run it
  5. Describe the ASP object model
  6. Identify ASP's standard components


Primary differences between 1) Classic ASP and 2) ASP.NET

  1. Language:
    • Classic ASP: VBScript or JScript
    • ASP.NET: C#, VB.NET, F#
  2. Compilation:
    • Classic ASP: Interpreted at runtime
    • ASP.NET: Compiled into Intermediate Language (IL) and then Just-In-Time (JIT) compiled into native code
  3. Execution Model:
    • Classic ASP: Single-threaded, event-driven model
    • ASP.NET: Multi-threaded, request-response model
  4. Web Forms vs. MVC:
    • Classic ASP: No specific design pattern or framework
    • ASP.NET: Supports both Web Forms (event-driven) and Model-View-Controller (MVC) architectural patterns
  5. Security:
    • Classic ASP: Inherits security settings from IIS
    • ASP.NET: Provides built-in security features like authentication, authorization, and role-based access control
  6. Scalability:
    • Classic ASP: Limited scalability due to single-threaded execution model
    • ASP.NET: More scalable due to multi-threaded execution and features like load balancing and session state management
  7. Database Access:
    • Classic ASP: Uses ADO (ActiveX Data Objects) for database connectivity
    • ASP.NET: Supports ADO.NET, which provides a more modern and efficient way to access data
  8. Caching:
    • Classic ASP: Limited caching capabilities
    • ASP.NET: Provides built-in caching mechanisms like Output Caching and ViewState
  9. Deployment:
    • Classic ASP: Deployed as .asp files
    • ASP.NET: Deployed as compiled assemblies (.dll files)
  10. Support:
    • Classic ASP: No longer actively supported by Microsoft
    • ASP.NET: Actively supported and updated by Microsoft


Despite the advantages of a lengthy ASP design stage, ASP pages are still typically designed hastily. Rigorous ASP design has not gained wide acceptance due to three reasons:
  1. Businesses are operating on Internet time. Due to the fact that businesses must operate at Internet time to stay competitive, many of the lengthier software development phases that are enjoyed in classical software development are rushed through or sidestepped completely for web applications.
  2. Active Server Pages are created using scripting languages. Scripting languages are meant to solve small, discrete problems. Rarely does a developer consider using a scripting language to tackle a formidable programming challenge. Therefore, when coding with a scripting language, it may seem and feel unjustifiable to spend any significant amount of time working on the design of the script.
  3. Active Server Pages are easy to use, and can build powerful, dynamic web sites quickly. This, of course, is an advantage of using ASP to develop a web site, but it is a bit of a double-edged sword. Due to the expectations of developers concerning the ease of development and quick time frame for creating an ASP web site, a lengthy design process may seem out of place.

The next lesson compares server-side and client-side scripting.
[1] Web server: A system which accepts and processes HTTP requests.
[2] Web application: An application which is deployed over the Web, and maintains an interaction between a client and server.

SEMrush Software