APIdeology: Application Programming Interface best practices

The public interface of a software component, i.e., an element such as a header file that’s readily visible to the developer, is often the software’s most important feature. Best practices in the development and maintenance of application programming interfaces (APIs), or what we might cleverly call “APIdeology,” dictate that software interfaces do not change once they have been released, with …