# Published Interface Published interface is an idea in computer science created by Martin Fowler[^1] of a distinction between *public* and *published* APIs. In typical object oriented programming we already distinguish between *public* and *private* APIs and that distinction is even enforced by the compiler. But what if you change a *public* API that someone is using? Any such change would be a breaking change. And one that cannot be enforced by the compiler (how can it know?). You should devise a method of tracking published APIs if at all possible, and any changes to them should follow the [[Open-closed Principle]]. A concept of a published interface is fundamental in every system that follows the Common Object Request Broker Architecture (CORBA). [^1]: Martin Fowler. [Published Interface](https://www.martinfowler.com/bliki/PublishedInterface.html).