TEST 1 MATERIAL
Client-side Programming with Java
design goals
platform independence, portable, secure, simple, object-oriented,...
source code compiled into Java byte code, then interpreted
language constructs
basic syntax similar to C++, but simpler & more robust
class vs. instance variables/methods, primitive vs. reference types
no explicit pointers, automatic garbage collection
extensive library support: String, Array, ArrayList, LinkedList, HashMap,...
no templates, but can store arbitrary Objects via inheritance, wrappers
Java applets
inherit from Applet class, default methods include init, paint,...
APPLET & OBJECT tags, applet parameters & dimensions
Graphics object, methods (drawRect, drawString,...), double buffering
GUI elements, applet layout, event handling
Java Archive (JAR) files: multiple Java files/classes zipped together
JavaBeans: reusable, packaged components
Integrating JavaScript & Java
calling Java routines from JavaScript: possible under Netscape
calling applet methods from JavaScript: document.APPLET_NAME.METHOD_CALL(...)
accessing HTML/JavaScript from an applet: more complex, use JSObject class
extract window object, document object, form object, field object,...
Server-side programming
advantages: cross-platform, more tools/power, code integrity
Common Gateway Interface (CGI)
language-neutral protocol for Web server/program communication
using POST, program reads from standard input
URL-encoded data contain field names & values
program writes to standard output: response header + blank + page data
CGI in Perl
free, portable, simple scripting language w/ support for CGI (CGI.pm)
output via print("..."), print(<