Content deleted Content added
No edit summary |
No edit summary |
||
Line 1:
{{hatnote group|
{{redirect|API}}
{{hatnote|"Api.php" redirects here. For
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 18 ⟶ 17:
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
# Numbered list item </ref>antage of any Java API.<ref name="OderskySpoonVenners8">{{Cite web |url=http://www.artima.com/pins1ed/combining-scala-and-java.html |title=Combining Scala and Java |last1=Odersky |first1=Martin |last2=Spoon |first2=Lex |date=10 December 2008 |website=www.artima.com |access-date=29 July 2016 |last3=Venners |first3=Bill}}</ref> API use can vary depending on the type of programming language involved.
Line 237 ⟶ 238:
* {{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}}hacked.
{{Authority control}}
|