1、 textentry boxes, check boxes, radio boxes, lists and dropdown lists, as well as a button that can only be programmed to reset the data on the form or “submit” the data on the form back to the server. This submission passes through the Common Gateway Interface (CGI) provided on all Web servers。 The
2、text within the submission tells CGI what to do with it。 The most common action is to run a program located on the server in a directory thats typically called “cgibin。” (If you watch the address window at the top of your browser when you push a button on a Web page, you can sometimes see “cgi-bin”
3、within all the gobbledygook there。) These programs can be written in most languages。 Perl is a common choice because it is designed for text manipulation and is interpreted, so it can be installed on any server regardless of processor or operating system。Many powerful Web sites today are built stric
4、tly on CGI, and you can in fact do nearly anything with it。 However, Web sites built on CGI programs can rapidly become overly complicated to maintain, and there is also the problem of response time。 The response of a CGI program depends on how much data must be sent, as well as the load on both the
5、 server and the Internet。 (On top of this, starting a CGI program tends to be slow.) The initial designers of the Web did not foresee how rapidly this bandwidth would be exhausted for the kinds of applications people developed。 For example, any sort of dynamic graphing is nearly impossible to perfor
6、m with consistency because a GIF file must be created and moved from the server to the client for each version of the graph。 And youve no doubt had direct experience with something as simple as validating the data on an input form。 You press the submit button on a page; the data is shipped back to t
7、he server; the server starts a CGI program that discovers an error, formats an HTML page informing you of the error, and then sends the page back to you; you must then back up a page and try again。 Not only is this slow, its inelegant。The solution is client-side programming。 Most machines that run W
8、eb browsers are powerful engines capable of doing vast work, and with the original static HTML approach they are sitting there, just idly waiting for the server to dish up the next page. Clientside programming means that the Web browser is harnessed to do whatever work it can, and the result for the
9、 user is a much speedier and more interactive experience at your Web site.The problem with discussions of client-side programming is that they arent very different from discussions of programming in general。 The parameters are almost the same, but the platform is different: a Web browser is like a l
10、imited operating system. In the end, you must still program, and this accounts for the dizzying array of problems and solutions produced by client-side programming. The rest of this section provides an overview of the issues and approaches in clientside programming。2。Plug-insOne of the most signific
11、ant steps forward in client-side programming is the development of the plug-in. This is a way for a programmer to add new functionality to the browser by downloading a piece of code that plugs itself into the appropriate spot in the browser. It tells the browser “from now on you can perform this new
12、 activity.” (You need to download the plug-in only once.) Some fast and powerful behavior is added to browsers via plugins, but writing a plugin is not a trivial task, and isnt something youd want to do as part of the process of building a particular site. The value of the plugin for clientside prog
13、ramming is that it allows an expert programmer to develop a new language and add that language to a browser without the permission of the browser manufacturer。 Thus, plug-ins provide a “back door that allows the creation of new client-side programming languages (although not all languages are implem
14、ented as plugins).3.Scripting languagesPlug-ins resulted in an explosion of scripting languages。 With a scripting language you embed the source code for your clientside program directly into the HTML page, and the plugin that interprets that language is automatically activated while the HTML page is
15、 being displayed. Scripting languages tend to be reasonably easy to understand and, because they are simply text that is part of an HTML page, they load very quickly as part of the single server hit required to procure that page. The tradeoff is that your code is exposed for everyone to see (and ste
16、al)。 Generally, however, you arent doing amazingly sophisticated things with scripting languages so this is not too much of a hardship。This points out that the scripting languages used inside Web browsers are really intended to solve specific types of problems, primarily the creation of richer and m
17、ore interactive graphical user interfaces (GUIs)。 However, a scripting language might solve 80 percent of the problems encountered in client-side programming。 Your problems might very well fit completely within that 80 percent, and since scripting languages can allow easier and faster development, y
18、ou should probably consider a scripting language before looking at a more involved solution such as Java or ActiveX programming。The most commonly discussed browser scripting languages are JavaScript (which has nothing to do with Java; its named that way just to grab some of Javas marketing momentum)
19、, VBScript (which looks like Visual Basic), and Tcl/Tk, which comes from the popular crossplatform GUI-building language。 There are others out there, and no doubt more in development。JavaScript is probably the most commonly supported. It comes built into both Netscape Navigator and the Microsoft Int
20、ernet Explorer (IE)。 In addition, there are probably more JavaScript books available than there are for the other browser languages, and some tools automatically create pages using JavaScript. However, if youre already fluent in Visual Basic or Tcl/Tk, youll be more productive using those scripting
21、languages rather than learning a new one. (Youll have your hands full dealing with the Web issues already。) 4。JavaIf a scripting language can solve 80 percent of the client-side programming problems, what about the other 20 percent-the “really hard stuff?” The most popular solution today is Java. No
22、t only is it a powerful programming language built to be secure, cross-platform, and international, but Java is being continually extended to provide language features and libraries that elegantly handle problems that are difficult in traditional programming languages, such as multithreading, databa
23、se access, network programming, and distributed computing. Java allows client-side programming via the applet。An applet is a miniprogram that will run only under a Web browser。 The applet is downloaded automatically as part of a Web page (just as, for example, a graphic is automatically downloaded)。
24、 When the applet is activated it executes a program. This is part of its beauty-it provides you with a way to automatically distribute the client software from the server at the time the user needs the client software, and no sooner。 The user gets the latest version of the client software without fa
25、il and without difficult reinstallation。 Because of the way Java is designed, the programmer needs to create only a single program, and that program automatically works with all computers that have browsers with builtin Java interpreters。 (This safely includes the vast majority of machines。) Since J
26、ava is a full-fledged programming language, you can do as much work as possible on the client before and after making requests of the server。 For example, you wont need to send a request form across the Internet to discover that youve gotten a date or some other parameter wrong, and your client comp
27、uter can quickly do the work of plotting data instead of waiting for the server to make a plot and ship a graphic image back to you。 Not only do you get the immediate win of speed and responsiveness, but the general network traffic and load on servers can be reduced, preventing the entire Internet f
28、rom slowing down.One advantage a Java applet has over a scripted program is that its in compiled form, so the source code isnt available to the client。 On the other hand, a Java applet can be decompiled without too much trouble, but hiding your code is often not an important issue。 Two other factors
29、 can be important。 As you will see later in this book, a compiled Java applet can comprise many modules and take multiple server “hits” (accesses) to download. (In Java 1。1 and higher this is minimized by Java archives, called JAR files, that allow all the required modules to be packaged together an
30、d compressed for a single download.) A scripted program will just be integrated into the Web page as part of its text (and will generally be smaller and reduce server hits)。 This could be important to the responsiveness of your Web site. Another factor is the allimportant learning curve。 Regardless of what youve heard, Java is not a trivial language to learn。 If youre a Visual Basic programmer, moving to VBScript
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1