Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[pde-dev] Refactoring PDE


There was some discussion recently in https://bugs.eclipse.org/bugs/show_bug.cgi?id=200565 about splitting out the XML text editing infrastructure and other such refactorings.  This coincided with the 3.4 plan calling for the addition of API tooling and Provisioning (p2) tooling to the PDE scope as well as the progressive relegation of Update Manager tooling as Update manager is replaced with p2.  These events sparked an observation that we should consider "refactoring" the PDE project structure.  

Technically speaking the PDE project has only two real components, UI and Build.  In actual fact with the new work, it has half a dozen (Bundle tooling, releng/build infrastructure, UA tools, Update tools, API tooling and p2 tooling) related but distinct functional directions.   So the question:  Why not create project components for each of these functional areas?  And following some of the points in bug 200565 proceed to, over time, refactor some of the code to supply distinct bundles for the different functional areas.

Benefits
- support a more diverse range of configurations (e.g., p2 tooling ought not drag in UA tooling or Update tooling!)
- clarity of the fact that PDE is tooling distinctly different function
- fight the "waddiness wave" that will crash over PDE as we add more and more diverse capabilities
- reify some of the informal structure/organization that exists today
- a step towards satisfying people who ask for access to underlying parts of PDE

Drawbacks
- a few of the new components would be small and somewhat inactive
- increases the apparent complexity by surfacing that there really are all these different parts of PDE
- this is more work.  We'd have to develop real or psuedo-api as pieces are teased apart or added on. (this is likely inevitable)


Jeff

Back to the top