'. '

Evolving the API Universe

From APIDesign

Revision as of 09:20, 26 June 2009 by JaroslavTulach (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

Have You Ever Wondered...?

Have you ever were afraid to release your API because you knew the implementation behind it is not good enough? Have you been afraid of the API's future? Of numerous bugs, each creating another incompatibility? Chapter 15 explains that you do not have to! If you design your API to be ready for evolution, you can resuscitate even bad design of your broken libraries without doing incompatible changes. All that is needed is to know the right way of introducing alternative behaviours and also knowing how to allow coexistence of similar APIs.

This chapter also shortly mentions Singletonizer, an interesting creational API design pattern. However more information is available online.

Section Resuscitating Broken Libraries also introduces testing style to guarantee full BackwardCompatibility when rewriting implementation behind existing API - the ImplementationCompatibilityTest.

Personal tools