Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[eclipse.org-architecture-council] Bjorn's view of the Eclipse architecture

(It was sooo tempting to return to my email or to make phone calls, but I said I'd do this so here it is...)

Major Eclipse Platform components:
  • OSGi plug-in loader
  • Ant
  • Update
  • Resource model including IWorkspace and IProject
  • Workbench User Interface including menus, editors, views, wizards, etc.
  • JDT Compiler and in-memory model
  • JDT User Interface (editors, views, wizards, debugger, etc)
  • Debug Framework
  • Team Framework including compare/difference engine and user interface
  • CVS Team Tools
  • PDE
  • Widgets (SWT and JFace)
  • Help System
We can use an automated tool to determine what the dependencies between the these components are. I'm playing around with Lattix for this purpose.  It doesn't break up as cleanly as I would like (the upper diagonal numbers are dependencies that violate my component structure):

Part of my problem is that I started from package names and the Platform has ui code mixed with core code under the same high level package, e.g., org.eclipse.foo.internal.ui... and org.eclipse.foo.internal... so I have to go through and separate out each of the dependent pieces.  I'm not complaining, I'm just stating that the packaging naming does not exactly match my idea of how the components are laid out.

Clearly there is a layout of the components that works or Eclipse couldn't load, so perhaps I should start from the plug-ins rather than the package names...

Anyway, my 30 minutes is up, so here's my input...
Bjorn

Back to the top