Content deleted Content added
No edit summary |
Reverted 2 edits by 95.56.108.95 (talk) (TW) |
||
Line 1:
{{hatnote group|
{{redirect|API}}
{{hatnote|"Api.php" redirects here. For the Wikipedia API, see {{Plain
}}
An '''application programming interface''' ('''API''') is a [[Interface (computing)|computing interface]] which defines interactions between multiple software intermediaries. It defines the kinds of calls or requests that can be made, how to make them, the data formats that should be used, the conventions to follow, etc. It can also provide extension mechanisms so that users can extend existing functionality in various ways and to varying degrees.<ref name="Fisher1">{{Cite web |url=https://books.google.com/books?id=YToEAAAAMBAJ&pg=PA6&dq=application+programming+interface#v=onepage |title=OS/2 EE to Get 3270 Interface Early |last=Fisher |first=Sharon |date=1989 |website=Google Books}}</ref> An API can be entirely custom, specific to a component, or it can be designed based on an industry standard to ensure interoperability. Through [[information hiding]], APIs enable [[modular programming]], which allows users to use the interface independently of the implementation.
Line 17 ⟶ 18:
A single API can have multiple implementations (or none, being abstract) in the form of different libraries that share the same programming interface.
The separation of the API from its implementation can allow programs written in one language to use a library written in another. For example, because [[Scala (programming language)|Scala]] and [[Java (programming language)|Java]] compile to compatible [[bytecode]], Scala developers can take
API use can vary depending on the type of programming language involved.
Line 238 ⟶ 237:
* {{Cite journal |last=Taina Bucher |year=2013 |title=Objects of Intense Feeling: The Case of the Twitter API |url=http://computationalculture.net/article/objects-of-intense-feeling-the-case-of-the-twitter-api |journal=Computational Culture |issn=2047-2390 |number=3|ref=none}} argues that "APIs are far from neutral tools" and form a key part of contemporary programming, understood as a fundamental part of culture.
{{Operating system}}
{{Authority control}}
|