ITEC324 Principle of CS III Chapter 8 (Horstmann’s Book) Frameworks Hwajung Lee ITEC324 Principle of CS III
Frameworks Framework is a set of cooperating classes and interface types that structures the essential mechanisms of a particular domain. Example: Swing is a GUI framework Framework != design pattern Typical framework uses multiple design patterns Inversion of control: framework controls execution flow
Example of Frameworks Applets (1) Applet: Java program that runs in a web browser Programmer forms subclass of Applet or JApplet overwrites Init start stop destroy paint Init Called exactly once, when a class that extends the Applet class. Purpose: Initialize data structures and add user interface elements Start Called when the applet is first loaded and every time the user restore the browser window containing the applet. Purpose: Start or restart thread that perform animation or other tasks. Stop Called when the user hides the browser window containing the applet and when the browser terminates. Purpose: Stop thread from updating the applet so computing resources are conserved when the applet is not being viewed. Destroy Called when the browser terminates. Purpose: Relinquish any resources that were acquired during init or other processing. paint Called when the applet window needs repainting. Purpose: Redraw the window contents to reflect the current state of the applet data structures.
Example of Frameworks Applets (2) init Called exactly once, when a class that extends the Applet class. Purpose: Initialize data structures and add user interface elements start Called when the applet is first loaded and every time the user restore the browser window containing the applet. Purpose: Start or restart thread that perform animation or other tasks.
Example of Frameworks Applets (3) stop Called when the user hides the browser window containing the applet and when the browser terminates. Purpose: Stop thread from updating the applet so computing resources are conserved when the applet is not being viewed. destroy Called when the browser terminates. Purpose: Relinquish any resources that were acquired during init or other processing.
Example of Frameworks Applets (4) paint Called when the applet window needs repainting. Purpose: Redraw the window contents to reflect the current state of the applet data structures.
Example of Frameworks Applets (5)
Example of Frameworks Applets (6) Sample Source Code: Shows scrolling banner HTML page contains applet tag and parameters <applet code="BannerApplet.class" width="300" height="100"> <param name="message" value="Hello, World!"/> <param name="fontname" value="Serif"/> <param name="fontsize" value="64"/> <param name="delay" value="10"/> </applet>
Example of Frameworks Applets (7) ch8/applet/BannerApplet.java ch8/applet/BannerApplet.html init method reads parameters start/stop start and stop timer paint paints the applet surface
Example of Frameworks Applets (8)