An application programming interface defines the operations available to client code and their promised behavior, including inputs, outputs and failure cases. For a FIFO queue, operation names alone do not specify what happens on an empty or full queue. An API should state those cases before clients depend on them.
Software module 2026-10-13
A software module groups responsibilities behind an application programming interface. Its boundary can be maintained by procedures and hidden storage; it need not be a class in object-oriented programming. Information hiding guides which implementation decisions belong inside that boundary.