VAJ: V2->V3 Changes
This chapter presents a partial list of the changes made between VisualAge for Java versions 2.0 and 3.0. This is not a complete list, but we present it to give you an idea of the types of changes made. If you have used version 2.0 in the past, this list can serve as a quick means to find some very nice improvements in the tool. We do not describe these changes in detail here, though most of the changes appear in the book.
If you know of any changes that do not appear in this list, please email Scott Stanchfield, scott@javadude.com.
The Workbench
-
The quick start menu (available from File->Quick Start menu item) has more options, helping you access tools to build applications and applets, manage the respository, and others.
-
Three new menu items appear at the top of the Workspace menu. These items allow you to open a project, type or package browser without changing the current selection in your browser. This is a great benefit, because you don't need to save one method or class to view another.
-
Resource files now appear in a tab in the project browser. You can open, delete, and rename these files. You can assign which program or Java class opens each type of resource file.
-
A new application wizard helps you build visual application.
-
The run command keeps track of the last several runs. You can right-click on the run button on the toolbar to choose a previous class to run. This helps because you do not need to select the class again to run it.
-
A new Version button appears on the toolbar to version the selected objects.
-
Generate->Required methods command for classes adds stub methods required by interfaces or abstract superclasses.
-
Generate->Accessor Methods (get/set) for fields.
-
Reorganize->Fix/Migrate command renames package references in classes and in their visual design information. This is useful if you rename a package, or want to move from Swing 1.0.3 to Swing 1.1.1.
-
The Window->Orientation menu has change to provide a simpler Window->Flip orientation option.
-
The tree views remember their last tree expansion state.
-
You can now open browsers in the same window, moving between windows using a forward and back button in the toolbar.
-
Bookmarks are a bit easier to manage, and are more visible via menus.
-
The status bar is now segmented, showing a more organized view of its data. You now have the choice of seeing the developer or owner of types in the status bar by right-clicking on the user name.
-
The all projects pane has filter buttons at top to limit public items, static methods, and field display.
-
Members panes have filter buttons at top that limit public items, static methods, visibility to root minus one, and field display.
-
Online help format is significantly improved.
-
Browsers open to last-selected tab.
-
A new Problems page appears in property dialogs for projects, packages, classes, showing a summary of problems.
-
Reorganize->Rename for classes now has a checkbox to find references to the old name.
-
The console makes it easier to control termination and removal of programs.
-
New warning added for unconventional package names.
-
Attribute filters added to allow limiting displayed items in lists (protection, fields, abstract, final, constructors, etc)
-
SmartGuides can add imports for selected fully-qualified types.
Keyboard Features
-
The Whatis command is available by pressing F6. You then can press another key and VisualAge tells you what command it binds.
-
You can run a class via a keyboard assignment. By default this is bound to control-e.
-
You can maximize panes using (by default) control-m.
-
You can change key bindings in the options dialog.
-
Multiple keys can be bound to same action.
-
Emacs style key presses available.
Code Assist
-
Available in more places
-
Can choose completion using other keys.
-
Can automatically insert if only one completion.
-
Does not require all text to be correct in scrapbook.
-
Types are now shown for fields and macros in selection list.
-
Now works case-insensitive, except for first character.
-
Code assist available in SmartGuide fields that ask for existing class or field names.
-
Method parameter names now appear in tooltips.
Editor
-
Comment a block of code.
-
Incremental text search (control-i).
-
Open selected text (package, class, method) object browser (F3).
-
Deeper undo (20 levels).
-
Cursor movement no longer loses undo data.
-
Backspace/delete now undo properly.
-
View reference (API) help (control-h).
-
Set breakpoint (control-b).
-
HTML tags in documentation comments are now color coded.
-
Keyword completions can create entire language constructs.
-
Macros
-
Any text you want
-
<user> - insert current user name
-
<timestamp> - insert current time
-
Searching
-
Keeps track of previous searches. Can rerun previous searches by right-cliking the flashlight icon in the toolbar.
-
Working sets allow performing a search across a specific set of projects, packages, types.
-
Textual find/replace across multiple objects, and can now do whole-word matching.
-
Easier navigation to next occurrence (up/down buttons moved to matches pane).
-
Can sort results by method or class.
-
Can remove some results from view.
-
Can replace matches w/ something else.
-
Search scope consistent across all search dialogs and management query.
-
Search scope is now clearly visible and modifiable.
-
Common scope choices added to method popup menu search items.
-
Field search menus combined into single dialog.
-
Has menu options for called methods and used variables in methods popup.
-
Restructured "references to" and "declarations of" menu items.
-
Management Query Improvements
-
Simpler interface
-
Common queries added as dropdown menu.
-
Allows projects, packages, types in same search.
-
Import/Export
-
Can automatically version after import.
-
Can automatically add most recent version of project in a repository import file to workspace.
Debugging
-
More control of conditional breakpoints.
-
Can set for a specific iteration
-
Can set for specific threads
-
-
Watch window added to watch variable and expression values.
-
Evaluation window allows you to evaluate any code without modifying the source code.
-
Can inspect selected thread in debugger
-
Caught exceptions now appear as a debugger page instead of a dialog.
-
External classfile breakpoints now appear in breakpoints list.
-
Visible variables list can appear in its own window.
Scrapbook
-
Goto line number (control-g).
-
Execution contexts only added when needed.
VCE
-
Use inner classes for event handling
-
If import-on-demand used, generates unqualified class names in most cases.
-
Custom layout manager support.
-
Reset button available to unset properties.
-
Fix unresolved references command.
-
Generated code no longer uses custom classes (for example WindowCloser)
-
Can register property editors for types
-
Null layout-to-GridBagLayout converter.
-
Quick form generation based on a bean definition.
-
Property-to-property connection code now checks if source/target variable is null.
-
The "add beans from project" option for palette management now sorts by bean class name rather than package name.
-
GridLayout now allows rows=0 setting.
BeanInfo
-
Control-s works (if control-s is set to save/new -- otherwise use control-shift-s)
-
Preferred checkbox in SmartGuides makes it easier to define preferred features.
-
Delete dialog now includes fields for deleting properties.
-
Delete dialog now selects methods by default when deleting properties.
Websphere test environment
-
In pro/enterprise on Windows/NT
-
In professional edition, supports servlets and Java Server Pages (JSP)
-
In enterprise edition, support Enterprise JavaBeans (EJB)
Other Features
-
JSP development environment added
-
Servlet development environment added to professional
-
Stored Procedure builder added
-
New Data Access Beans added.
-
SQLJ Support provided. Can edit and compile SQLJ files.
-
Enterprise edition includes EJB Development Environment.
Tool API
-
New methods added
-
purge() in ProjectEdition/PackageEdition
-
compact() in Repository
-
-
Remote access
-
Tool data directory