What is an Application programming interface(API)?

733 views 10 slides Jan 13, 2019
Slide 1
Slide 1 of 10
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10

About This Presentation

What is an API?
purpose,
History,
Types,
Examples.


Slide Content

Application programming interface An application programming interface is a set of subroutine definitions, communication protocols, and tools for building software.

Purpose Just as a Graphic User Interface  (GUI) makes it easier for people to use programs, application programming interfaces make it easier for developers to use certain technologies in building applications . An API simplifies programming by  abstracting  the underlying implementation and only exposing objects or actions the developer needs.

History The term  API  seems to appear for the first time in the article of Ira w. Cotton "Data structures and techniques for remote computer graphics" published in 1968.

Uses Libraries and frameworks Operating systems Remote APIs Web APIs Design

Libraries and frameworks An API usually is related to a software library. The API describes and prescribes the "expected behavior" (a specification) while the library is an "actual implementation" of this set of rules . A single API can have multiple implementations (or none, being abstract) in the form of different libraries that share the same programming interface.

Operating systems An API can specify the interface between an application and the operating system .   POSIX , for example, specifies a set of common APIs that aim to enable an application written for a POSIX conformant operating system to be compiled for another POSIX conformant operating system.

Remote APIs Remote APIs allow developers to manipulate remote resources through protocols, specific standards for communication that allow different technologies to work together, regardless of language or platform

Web APIs Web APIs are the defined interfaces through which interactions happen between an enterprise and applications that use its assets, which also is a Service Level Agreement (SLA) to specify the functional provider and expose the service path or URL for its API users. An API approach is an architectural approach that revolves around providing a program interface to a set of services to different applications serving different types of consumers.

Design The design of an API has significant impact on its usage .   The principle of information hiding describes the role of programming interfaces as enabling modular programming by hiding the implementation details of the modules so that users of modules need not understand the complexities inside the modules. .

10 Open CL   cross-platform API for general-purpose computing for CPUs & GPUs OpenGL   cross-platform graphics API Open MP   API that supports multi-platform shared memory multiprocessing programming in C, C++ and Fortran on many architectures, including Unix and Microsoft Windows platforms. Server Application Programming Interface  (SAPI) Simple Direct Media Layer  (SDL) ASPI  for  SCSI  device interfacing Cocoa  and  Carbon  for the  Macintosh DirectX  for  Microsoft Windows EHLLAPI Java APIs ODBC  for  Microsoft Windows Open AL  cross-platform sound API Examples: