Evolving the API Universe
From APIDesign
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? [[Evolving the API Universe|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.