Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[amp-dev] Good guidance on implementation


If no objections, let's follow these excellent guidelines form Mylyn. Please note especially the @Overides directive. I think that answers our issue regarding how to make use of that keyword.

Code

  • For error handling use StatusHandler and pass an IStatus object. Note that some of the other Mylyn code uses the convenience methods on StatusHandler, but we are phasing those out because they do not pass the plug-in ID that the exception originated from.
  • Use WorkbenchJob for running jobs that should only run when the workbench is active. Not doing this can cause errors on workbench shutdown (e.g. bug 178409).
  • When using String.toLowerCase(), use String.toLowerCase(Locale.ENGLISH) to ensure locale safety (see bug 168652).
  • Do not use @Override annotations on implementing methods, only on overriding methods. Doing so violates Java 5 (bug 173171).
  • Use DateFormat with extra caution. It is not thread-safe and should not be saved to fields in classes that can be used from multiple threads (UI, asynchonous execution, or jobs).
  • For the sake of multi-monitor setups, use getMonitor() instead of getDisplay() when you want to position a UI element on a specific coordinate of the screen.
  • To improve the speed of decorators use setUseHashlookup(true) on all structured viewers.



______________________________
Miles T. Parker
President and Chief Software Architect
Metascape, LLC
Project Lead
Eclipse Agent Modeling Project

tel: 509-643-4441
skype: milestravisparker
______________________________


Back to the top