TO: Professor Ellis
FROM: Jinquan Tan
SUBJECT: Expanded Definition of Application Programming Interface
The purpose of this document is giving the definition of API(Application programming interface).I will describe the definitions and context of API in the next two paragraphs.
“An Application Programming Interface (API) is a set of functionalities provided by a third-party component (e.g., library and framework) that is made available to software developers. APIs are extremely popular as they promote reuse of existing software systems (Johnson and Foote 1988)”(Sawant,2016,p.1349).This definition said API set of functionalities provided by a third-party component that is made available to software developers. APIs and is popular since the late 19 century.“The HITRAN Application Programming Interface (HAPI, [15,16]) represents a code library that was made in an attempt to combine a unified data and code approach to work with the spectroscopic data”(Kochanov,2016,p.16).This definition said API of their own(The HITRAN) is code the combine together and work with data. “We describe the Materials Application Programming Interface (API), a simple, flexible and efficient interface to programmatically query and interact with the Materials Project database based on REpresentational State Transfer (REST) principles”(Ong,2015,p.210). This definition said API is a simple interface that interacts with the database.Of all these definitions the similarity between them are they all said is component interaction. And the differences between them are they all have their own different API.
“More than 50 companies, including I.B.M., Hewlett-Packard and Sun Microsystems, will announce tomorrow the single specification for application programming interfaces, or A.P.I.’s, which link a software operating system to applications like spreadsheet, data base and graphics programs. An operating system is the set of basic internal commands that enable a computer to function”(Lohr,1993,p.4).New York Time writer said that application programming interfaces were used by more than 50 companies which use applications like spreadsheet, data base and graphics programs. “In fact, there are examples of companies sharing and collaborating all over the internet, in order to be able to compete. For example, Facebook, Twitter and LinkedIn have opened up their platforms with APIs (application programming interfaces)”(Leboff,2011,p.151).This quote saying application programming interfaces enables others to build online businesses and applications that integrate with these companies. This approach helps to keep these social networks relevant, as they are constantly able to offer their users new tools and functionality through third parties. It also helps them to widen their reach, as every business that chooses to integrate with them becomes a de facto referral and free piece of marketing. “application programming interface n. Computing a set of routines, protocols, and tools designed to allow the development of applications that can utilize or operate in conjunction with a given item of software, set of data, website, etc.; abbreviated API.” The Oxford dictionary giving the definition of application programming interface said that is something designed to allow the development of applications that can utilize or operate in conjunction.
Based on the definitions that I quoted and discussed, and the contextual uses of the term that I quoted and discussed, application programming interfaces are very related to my career major since I’m majoring in Computer Science Technology- Software development. My own definition of application programming interface is, API is a computing interface for interactions between multiple software intermediaries.
“application, n.”. OED Online. September 2020. Oxford University Press. https://www-oed-com.citytech.ezproxy.cuny.edu/view/Entry/9705?redirectedFrom=application+programming+interface (accessed October 19, 2020).
Kochanov, R., Gordon, I., Rothman, L., Wcisło, P., Hill, C., & Wilzewski, J. (2016). HITRAN Application Programming Interface (HAPI): A comprehensive approach to working with spectroscopic data. Journal of Quantitative Spectroscopy & Radiative Transfer, 177, 15–30. https://doi.org/10.1016/j.jqsrt.2016.03.005
Leboff, G. (2011). Controlling to Sharing. In Sticky Marketing: Why everything in marketing has changed and what to do about it (pp. 145-160). Kogan Page. https://link.gale.com/apps/doc/CX2387000023/GVRL?u=cuny_nytc&sid=GVRL&xid=979c9472
Lohr, S. (1993, August 31). Standard Set For Unix Interface. The New York Times. https://www.nytimes.com/1993/08/31/business/company-news-standard-set-for-unix-interface.html?searchResultPosition=1.
Ong, S., Cholia, S., Jain, A., Brafman, M., Gunter, D., Ceder, G., & Persson, K. (2015). The Materials Application Programming Interface (API): A simple, flexible and efficient API for materials data based on REpresentational State Transfer (REST) principles. Computational Materials Science, 97(C), 209–215. https://doi.org/10.1016/j.commatsci.2014.10.037
Sawant, A., & Bacchelli, A. (2016). fine-GRAPE: fine-grained APi usage extractor – an approach and dataset to investigate API usage. Empirical Software Engineering : an International Journal, 22(3), 1348–1371. https://doi.org/10.1007/s10664-016-9444-6