Beyond HTML: Tools for Interactivity
Types of ToolsBefore we examine specific tools, it is important to define the categories into which these tools fall.
Scripting vs. ProgrammingMost of the tools examined in this class are either “scripts” or “programming languages.” Scripting languages generally provide less functionality than programming languages, but can have quicker development times and slower runtimes.
Program: A complex block of programming code assembled to perform functions. Programs are usually “compiled” into code once and can then run multiple times. Compiling programs means that the written programming language is translated into a binary file (or set of files) that your computer can understand natively as zeroes and ones. Programs are utilized in web development in one of two ways: as server side programs, or in the case of Java, as client-side “applets.” (See section on Java for explanation of applets.) The web page (“client side” or “browser-based”) just becomes the user interface for a fulltime program, which is run from the server ( “server side” or “web server-based.”).
Script: Programming shorthand with less functionality than a full programming language. As opposed to a programming language, scripts are interpreted by your browser each time a web page comes up, so scripts function mostly through the client side. The web page is the container of the script and the vehicle for displaying the script that is embedded in HTML.
|
Client side |
Server Side |
|
JavaScript, DHTML, VBScript, Perl, Java (Applets) |
Java (Servlets), C, C++, Cold Fusion, Active Server Pages, Perl |
|
Advantage: Does not give access to the web server (better protection from hackers) |
Advantage: Does not depend on power of user’s machine to work effectively |
|
Disadvantages: Depends on the available power of the user’s machine. Capabilities are more limited, but effects are more immediate. |
Disadvantages: Server security—server side applications can provide entry to your web server to unauthorized persons (hackers). Performance can be slower because of calls to the server. The complexity of coding makes learning more difficult. |
Introduction | Tool Types
JavaScript | DHTML
| CGI/Perl
| Cold Fusion | Java