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

Articles by others on the same topic (0)

There are currently no matching articles.