1 / 26

JavaCHIME: Java Class Hierarchy Inspector and Method Executer

JavaCHIME: Java Class Hierarchy Inspector and Method Executer. by Pallavi Tadepalli and H. Conrad Cunningham Software Architecture Research Group Department of Computer and Information Science University of Mississippi. Objectives. Provide instructional environment for Java applications

cpatel
Download Presentation

JavaCHIME: Java Class Hierarchy Inspector and Method Executer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JavaCHIME: Java Class Hierarchy Inspector and Method Executer by Pallavi Tadepalli and H. Conrad Cunningham Software Architecture Research Group Department of Computer and Information Science University of Mississippi

  2. Objectives • Provide instructional environment for Java applications • Simulate real programming experience • Focus on classes and objects as central units of interaction • Solve two significant problems of teaching Java • Main method • Text-based input/output

  3. JavaCHIME • Implemented in Java using: • Java Reflection API • Java Swing • Focuses on object-oriented principles • Supports dynamic creation of objects, interactive calls to methods • Permits interactive argument specification and object inspection • Allows testing of methods without constructing a main method • Accepts user input interactively

  4. Features • Loads files • Automatically compiles newer version of source file • Provides Notepad as default editor on Windows • Separates environment into panels based on function

  5. Overview Class Browser . Source-file Display . Object Inspector . Console Display .

  6. Class Browser • Provides a view of the program’s class hierarchy • Displays tree view of class features ( interfaces, superclass, constructors, fields, and methods) • Allows creation of class instances interactively • Assigns user-supplied names to instances • Invokes static methods of class

  7. Class Browser(Constructors and Static Methods)

  8. Creating an Instance of a Class hello a = new hello(Integer, int) • Select constructor:public hello(java.lang.Integer,int) • Set name of object: a • Enter arguments for Integer and int.

  9. Entering Name of Object

  10. Specifying Parameters

  11. Accepting Array Parameters

  12. Static Method Invocation

  13. Output of Static Method Execution

  14. Object Inspector • Stores instances of a class • Allows inspection of information about an object • Permits invocation of methods and inspection of object state

  15. Object and Instance Methods

  16. Object values

  17. Source File Display • Displays the source of the loaded class • Shows the source only for viewing

  18. Source File Display

  19. Console Display • Shows results of method invocation • Mirrors program execution appearing in terminal window

  20. Console Display

  21. Existing Environments • Adapted from procedural environments • Not object-oriented • Too complex • Focused on user interfaces • BlueJ • DrJava

  22. BlueJ • Serves as a teaching environment implemented in Java • Prevents loading of single class • Converts every directory into BlueJ project type. • Prevents loading subdirectories without loading parent directory. • Provides confusing mechanism for parameter passing

  23. DrJava • Provides read-eval-print loop. • Allows evaluation of Java expressions and statements • Lacks graphical interface to create objects and call methods • Includes debugger • Provides brace matching • Supports highlighting of comments and quotations.

  24. Future Work • Incorporation of a fully functional editor • Handling ‘jar’ files • Integrating of JavaHelpTM software • Including a debugger • Creating objects for classes in packages • Handling multi-dimensional arrays • Creating sessions for each user

  25. Conclusion • Tool is easy to use, object-oriented graphical environment • Has support for code-reuse, learning • Solves the two significant problems of Java • Does not provide integrated tools, group support • Freely available

  26. THE END!!!!

More Related