In computer programming, an application programming interface is a set of subroutine definitions, and tools for building software. In general terms, it is a set of clearly defined methods of communication between various componentsA component or module is a discrete portion of a tool that has a particular function. Components can be assembled in different combinations to create hacks or tools. The larger the library of components, the more “genetic” diversity to choose from when creating new tools or h....