什么是API?用简单的术语解释

什么是API?用简单的术语解释

什么是API,为什么它在程序员中如此受欢迎,不是每个人都能解释什么是API,但每个人都在使用它。如果你想了解更多关于数据科学的相关内容,可以阅读以下这些文章:
0经验?一样能成为一名成功的数据科学顾问!
3步走方略——用Python为数据科学项目收集数据
担任数据科学经理的前半年,我学到了什么?
数据科学家应知的三个回归事项

应用程序编程接口(API)是计算机之间或计算机程序之间的连接。(ref.)

更简单地说,API是一套用于不同程序和计算机之间交互和数据交换的方法和规则。API用于其他程序和信息系统,这些程序和信息系统以严格指定的格式交换信息,这使得具有完全不兼容的配置系统能够进行互动(用不同的编程语言编写,位于本地或远程,等等)

示例:你在一家餐馆里。你是一个客户,你从菜单中选择一份订单。厨房是你订单的执行者。你需要一个中间人,他会把订单报告给厨房,并把你的食物送到你的餐桌上。他不可能是一个厨师,因为厨师正在厨房里忙着做饭。你需要有人把客户端和厨师联系起来。在这里,服务员可以帮助我们——API。服务员为你点餐,报告给厨房,然后把答案或食物送到你身边。

图片来自:作者使用免费图标绘制

另一个真实简单的例子是使用社交媒体账户在网站上快速注册。该应用程序可以使用社交网络API为用户提供简化的访问。这要感谢谷歌、Facebook、苹果、Twitter和其他公司拥有的API。

加入Medium页面截图

简而言之,使用API的功能就像雇佣一个自由职业者进行远程工作一样。一个应用程序指示另一个应用程序执行必要的工作,它的产品是自己提供的。

为什么一个API被称为接口?接口就像两个程序之间的边界,通过它可以交换信息,执行彼此相关的功能。但与此同时,发生在它们内部的进程又与另一个程序无法接触。

有了这个接口,可以在几个程序之间建立交互,而不必考虑它们的设计、程序逻辑或数据处理方法。它还帮助程序员不必为了将自己的产品与他人的产品连接而花费时间去理解其他专家的程序代码。

API允许你将大型复杂的信息系统拆分为独立的组件,并分别使用它们(由不同平台上的不同团队使用)。它更容易扩展,不像基于单个脚本(在单个平台内)创建的整体系统。

API的类型

有两种API类型:

  • 公共API由大公司发布,可供所有用户使用。但是公共API可以是授权的(每个请求都附带一个秘密令牌),也可以是完全公开的,对所有人都可用(不需要授权)。公共API旨在与外界共享,例如YouTube API(https://developers.google.com/youtube/v3)。第三方开发人员可以创建应用程序来利用这些接口。
  • 私有API是针对特定受众或用户群开发的内部应用程序。它们经常用于企业和公司内部。要使用这样的API,你需要获得访问权限。

API是用来做什么的?

  • 简化不同系统和服务之间的通信。开发人员可以将对第三方服务的支持嵌入到他们的产品中,甚至不需要考虑是谁创建了这些服务;
  • 进行交易;
  • 让发展更加安全。API有助于将必须保护不受外部影响的功能放入一个单独的应用程序中。这降低了第三方程序不正确使用它的可能性;
  • 与客户和合作伙伴系统整合数据流;
  • 省钱。购买现成的API有时比花时间从头开始创建功能以及随之而来的所有后果更有利可图;
  • 通过你开发的功能赚钱,其他开发者正在使用它来完成产品或改进他们自己的开发;
  • 提高自动化流程的安全性

结论

API被广泛用于程序和应用程序与操作系统或互联网站点的交互。如果API出现故障,那么几乎所有的互联网服务和大多数计算机程序都将停止工作。

感谢你的阅读。

你想尝试成为一名数据科学家的感觉吗?我正在为那些从未体验过数据科学的人创建一个端到端的数据科学项目。通过完成这个项目:

  1. 你将亲身体验整个数据科学周期,你将能够理解你是否想成为一名数据科学家。
  2. 你将开发一个可以用于面试的项目,或将自己的自由职业作为投资组合。
  3. 你将回答最受欢迎的面试问题,如果你决定追求数据科学家的职业生涯。

在你早期的职业生涯中,你遇到过什么困难?欢迎在评论区和我分享,我很乐意帮忙!我认真倾听你们的故事,并希望在这段旅程中为你们提供帮助。你还可以订阅我们的YouTube频道,观看大量大数据行业相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/

原文作者:Maria Gusarova
翻译作者:马薏菲
美工编辑:过儿
校对审稿:Chuang
原文链接:medium.com/@data.science.enthusiast/what-exactly-is-an-api-explained-in-simple-terms-2a9015c1a1a1