IDE++ User study & Eclipse Tutorial Zhongxian Gu
Outline Introduction to IDE++ About user study Eclipse Tutorial
IDE++ Programmers interact with IDEs. These interactions express programmer thought processes and work habits; in aggregate, they track project evolution. We advocate: by capturing and exploiting this rich interaction information, we can build the next generation of “super smart” IDEs.
Examples Recommender: an Eclipse expert looking over your shoulder, ready to help Test Reminder: help users to manage and build testing plans
User study We are looking for users’ interactions to understand how they are using their IDEs to help us build more powerful applications. Help to find out what’s the difference among different users to finish the same project?
Cash Prize For dedicated user $50, $30, $20 for the top three dedicated participants
Install IDE++ plug-in Details can be found at http://idepp.cs.ucdavis.edu/userstudy/ Quick Demo Verify it is correctly installed Folder Workspace_directory/.metadata/.plugins/ucdavis.idepp-logger exist Upload your interactions
Eclipse Tutorial What is Eclipse? Why Eclipse? An integrated development environment that integrates editing, testing, debugging, code management, and, etc. Why Eclipse? The dominant Java development IDE Many companies use Eclipse
Get Eclipse Download Extract it and run http://idepp.cs.ucdavis.edu/userstudy/ Extract it and run
Eclipse workbench From Eclipse presentation slides Menu bar Text editor Tool bar Perspective and Fast View bar Outline view Resource Navigator view Bookmarks view Properties view Tasks view Message area Editor Status area Stacked views From Eclipse presentation slides
Hello world Demo
Useful Features Forward/Backward (for browsing) Organize your imports (Alt + ->, Alt + <-) Organize your imports (Shift + Ctrl + O) Commenting (Ctrl + /) Code formatting (Shift + Ctrl + F) Link to a class (Ctrl + click to a class) Code completion (right click, source -> generate code) Refactoring (right click, refactor -> rename, move, …) Code completion: constructor, set/get methods. Refactoring: rename, move.
Use External Libraries Reuse is easy. Tons of libraries in sourceforge, github, and other open source platforms. Make your own libraries Demo
Popular Libraries Apache Commons
Popular Libraries Google – guava libraries
Use Junit It is good habits to write unit test cases for every functionality class. Junit helps to organize and mange your test cases. Demo
Debugging Debugging is important Use System.out.println() Use logger (Java logging interface, Log4j) Use Eclipse debugger
Thank you http://idepp.cs.ucdavis.edu/userstudy/ Zhongxian Gu IDE++ User study http://idepp.cs.ucdavis.edu/userstudy/ Zhongxian Gu zgu@ucdavis.edu