JeliotJeliot allows a Web user to visualize his own algorithms, written in Java, over the Internet. Jeliot is based
on self-animation of data types: the user selects the data objects of the source code which he wants to visualize,
and Jeliot produces the animation automatically. Built on an extensible architecture, Jeliot can be modified to
animate most common data structures. The contribution of Jeliot to Computer Science education is obvious. The student
can combine the learning and research activities The pieces of Jeliot
Main windowThe main window is an applet on a Web page containing an input area for an algorithm. First the algorithm is typed or pasted to the input area. Then the algorithm is submitted to the Jeliot server for parsing and compilation phases (the Start button). A collection of sample algorithms is provided for the user (the Examples button). Algorithms written in Java must be placed inside a Java class or classes. Algorithms submitted to Jeliot are not different in this respect. As a default, Jeliot offers a skeletal class so that the user may concentrate on the code of his actual algorithm. PrecompilationWhen the Jeliot server receives the algorithm, it extracts the variables, which can be animated, from the source
code and forms a list structure of them. This list structure is then passed back to the main window to be shown
in the setup window, which can be opened from the stage window. The code generator replaces operations on variables
by method calls that Director, stage and stage manager windowsThe animation control in the Jeliot is based on the concepts of director, stage and actor. In the following, the term "director" is used for the module, which helps the user to direct the play. The director is responsible for the management of the stages. A stage gives an unique view to the animation. The actors visualize the operations done on variables. Several actors can be present on a stage and a certain actor can be shown on many stages. An actor may have different presentation on each stage it is viewed on. The animation and stage creation are controlled from the director window. When a stage is created, a stage manager window will also be opened for it. This is the window where the user can pick the actors -- variables from any desired class and method of his algorithm -- for the animation. The location, size, color and the representation of the actors on the screen can also be defined in the window. A variable can be visualized in various numeric formats or geometric shapes. The selections are stored into the proper actor class instance that will represent that particular variable on that stage. All the operations done on a variable are acted by all the actors representing it on distinct stages. AnimationIn the animation a variable is visualized as an object, which can be for example a box or a circle. The contents
of the variable is visualized inside the object and the name is shown beside the object. Operations are shown by
moving these objects and possibly showing the operator between them. In comparisons, the result is given as colored
text. Optionally, the director window highlights the active line of the user program. The previous text was originally written by E.Sutinen. This is a shortened version of it. For more spesified information Jeliot has a Help options throughout the program. |