# 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).