Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Active X Microsoft’s Answer to Dynamic Content Reference: Using Active X by Brian Farrar QUE pub. @96 Static Content 1 Client www 1 Server Internet 2 2 1- Browser asks for a page 2- Server returns page and Browser displays CGIs 1 Client www 1 Server Internet 3 3 2 1- Browser invokes CGI program 2 CGI program 2- Server runs CGI program to create page 3- Server returns result of CGI to browser to display Does CGI make page dynamic? Yes No • result of whatever CGI • page itself doesn’t do produced anything • created on the fly • browser renders it and is finished • looks like any other page More Dynamic Activity Needed at Client • Helper apps launched by browser as external program based on MIME type of file. • Examples – Adobe acrobat files – Quicktime video – RealTime audio Helper App Problems • User needs to know what to download – – – – – not as much of a problem now: automatic more software to install on client author must figure out how to distribute code version control maintenance problems still widely used in past Versions of HTML • • • • HTML 1.0 CGIs and HTML 2.0 HTML 3.0 …. STILL NO DYNAMIC CONTENT MANAGED BY THE CLIENT Other Ways to Make Dynamic Client Pull • after a delay client asks for another page to display • uses <META> tag Server Push • Basically a cgi – Sends a file – delays – sends another file Forms and CGIs • Forms uses standard input controls to get user input • Browser invokes the CGI indicated on the page with data from the from • Server can respond to users differently! • Use GET or POST methods SUN adds dynamic content • • • • Java applets Java Java Script Hot Java Browser (not a hot item) Java • A language designed by SUN to be executed by an interpreter INSIDE THE BROWSER! • Client downloads a program and executes it rather than displaying a page • Any browser which adopts java can run the program - multi-platform! • All major browsers quickly adopted it. What else does Java add? • Authors distribute programs over web • User clicks and gets latest program rather than a static page • Always the latest version • Browser can be user interface for all programs • Authors control distribution / authenticate Applets vs Applications Java Applets • java programs which run in the browser • security concerns addressed in browser by crippling access to disk etc. Java Applications • like applets • run OUTSIDE the browser • standalone programs • compilable • like c++ applications • security not an issue Java Script • Whole new beast • Much less powerful • Allows for – user controls on form – handlers for events • Dynamically and Locally control browser • LOGIC in html • Procedures actually at top of html source VB Script • A Microsoft thing • Same concept as Java Script • Only in Internet Explorer (3.0 +) NETSCAPE JavaScript Internet Explorer VBScript Another approach • Not as general as a new language • Easier to display MIME types • Netscape has an API to let program actually be absorbed into the browser • Called PLUG-INS A look back! Programming Development • OOP/OOD • RAD Tools (graphical) • interprogram/process communication Interprocess/program Communication • Unix – sockets – pipes • Microsoft adds – DDE – Drag n Drop OLE • embedded or linked • Manual – export and import Objects and Design Object Communication • Objects interact by invoking methods and passing messages to handlers • Would like to have objects ask – what another object can do – what methods are available and then use the functionality available Similarities apps and html scripts • Message/event handlers • window controls but apps can be OO design extensibility • Message/event handlers • window controls Microsoft View OLE Application Application & OLE object have strict boundaries ActiveX Application Application & ActiveX object have loose boundaries Microsoft View ActiveX Browser ActiveX Application Same Active X objects used in Browser AND application Application program/design effort more usable