API

Back to Computer-Science-Concepts

Application-Programming Interface (API) describes the set of methods, tools, routines and protocols set out by a library, package, or software applicaiton. An API for the Java Math library describes the method names and their parameters like Math.pow(int, int).

Good API Design

Once an API is in use, it is hard to make drastic changes without breaking existing code.

Developing an API

Method Naming

Principle of Least Astonishment

"API elements should not do 'surprising' things". When overloading methods, the new implementation should conceptually do the same thing. Avoids lots of errors for programmers using your API.

Google Tech Talks from Josh Bloch, Java API designer