Jump to content

Application Programming Interface: Difference between revisions

From EDM2
No edit summary
No edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
An application programming interface or '''API''' is an interface that an executable program of any sort offers to other software. This is primarily intended to offer  software developers the capabilities of a certain program, or a subset thereof, for use in their own software. But this can also be the other way around, with an API designed in such as way that it is only useable to create extensions of the capabilities of a certain product (plugins etc). Note that not all applications will have a programming interface, while all operating systems do.
(1) An application programming interface or '''API''' is an interface that an executable program of any sort offers to other software. This is primarily intended to offer  software developers the capabilities of a certain program, or a subset thereof, for use in their own software. But this can also be the other way around, with an API designed in such as way that it is only useable to create extensions of the capabilities of a certain product (plugins etc). Note that not all applications will have a programming interface, while all operating systems do.


;Types of an application programming interface
;Types of an application programming interface
Line 5: Line 5:
* The simple operating system
* The simple operating system
:This sort of a system offers programmers some standard API functions, primarily to do with I/O such as disk and port interfaces and it means that a programmer can write I/O functions without having to worry about the low level functionality of the hardware but all other functions must be explicitly address hardware directly. These sort of OS's are rare these days but exist as embedded systems.
:This sort of a system offers programmers some standard API functions, primarily to do with I/O such as disk and port interfaces and it means that a programmer can write I/O functions without having to worry about the low level functionality of the hardware but all other functions must be explicitly address hardware directly. These sort of OS's are rare these days but exist as embedded systems.
<!--
<!--


Line 18: Line 16:
==Hidden API's==
==Hidden API's==
-->
-->
(2) A functional interface supplied by the operating system, or by a separately-orderable licensed program, that allows an application program written in a high-level language to use specific data or functions of the operating system or the licensed program.


(3) Term used to describe the set of functions by which an application may gain access to operating system services.


[[Category:Definitions]]
[[Category:Glossary]]

Latest revision as of 18:06, 26 April 2025

(1) An application programming interface or API is an interface that an executable program of any sort offers to other software. This is primarily intended to offer software developers the capabilities of a certain program, or a subset thereof, for use in their own software. But this can also be the other way around, with an API designed in such as way that it is only useable to create extensions of the capabilities of a certain product (plugins etc). Note that not all applications will have a programming interface, while all operating systems do.

Types of an application programming interface

These can be almost endless depending on the needs of the users, the functionality of the executable: Is it an operating system, a driver, a utility program or application software, and so on. But a few common examples are shown here

  • The simple operating system
This sort of a system offers programmers some standard API functions, primarily to do with I/O such as disk and port interfaces and it means that a programmer can write I/O functions without having to worry about the low level functionality of the hardware but all other functions must be explicitly address hardware directly. These sort of OS's are rare these days but exist as embedded systems.

(2) A functional interface supplied by the operating system, or by a separately-orderable licensed program, that allows an application program written in a high-level language to use specific data or functions of the operating system or the licensed program.

(3) Term used to describe the set of functions by which an application may gain access to operating system services.