在本文中,我们将以一种易于理解的方式解释所谓的API。 您只需要花费1分钟。
从文件操作开始谈论API。
以C语言为例,我们可以使用fopen()函数打开一个文件,感觉很简单。 这些文件存储在硬盘上,仅在经过复杂处理后才能显示。 这些细节对我们是透明的,并由操作系统完成。 换句话说,我们调用fopen()函数来通知操作系统,并让操作系统打开文件。
那么,我们如何告诉操作系统打开文件?
看似简单的操作对于底层来说非常复杂。 要打开文件,必须首先扫描硬盘以找到文件的位置,然后从文件中读取部分数据,然后将数据放入I / O缓冲区,然后将其放入内存。 这些数据全部都是0和1的序列必须根据ASCII表或Unicode表“转换”为字符,然后在监视器上显示。 如果程序员要执行此过程,那将是一场噩梦!
怎么做? 操作系统是一个很好的方法。 它预先在函数中编写了这些复杂的操作,将其编译成一个组件(通常是一个动态链接库),并随操作系统一起发布了文档。 仅限于程序员您只需调用这些函数即可完成复杂的任务,从而使编程变得简单而有趣。 这些封装的函数称为API(应用程序编程接口),即应用程序编程接口。
为了更容易理解,将他人编写的代码或编译后的程序(供您使用)称为API。 您可以在其他人的代码(或程序)中使用特定的函数,类或对象,使用特定的API对其进行调用。
操作系统API。
操作系统为我们实现了很多功能,它们都封装到一个函数中,有数十万个,这些函数称为API。 如果程序员要使用某个功能,则只需要调用相应的功能即可。 诸如Windows,Linux,Mac OS和Unix之类的常见操作系统的大多数功能都是用C语言开发的,它们的API也都用C语言提供。 操作系统API有很多,官员必须提供详细的文档(Windows API的文档称为MSDN),并且程序员在使用API时需要经常查阅这些文档。
Windows API控件和消息功能,例如:
1. AdjustWindowRect给定窗口样式,计算获得目标客户区矩形所需的窗口大小。
2. AnyPopup判断屏幕上是否有任何弹出窗口。
3. ArrangeIconicWindows排列父窗口的最小化子窗口。
编程语言API。
各种编程语言附带的标准库实际上是API。 这些API由编程语言的开发人员编写。 它们是安全,高效和强大的。 它们为我们实现了通用功能,因此我们不必重复操作。
C语言API以函数形式表示,例如printf(),scanf(),fopen()等。
Java API主要以类的形式表示,例如String,Thread,Date等。
C是基于C语言的扩展,因此C API包括函数和类。
第三方库(框架)
xml的libxml2-C语言版本库,用于2个项目,在win和Linux下非常犀利~~相对较快
CURL-这主要用于使用他封装的http和https请求,该请求更加清晰并包含openssl的内容
iconv强大的编码格式转换库,UTF8,Unicode等转换非常方便
openssl-C的开放源代码秘密库可以与CURL结合使用,该库可以执行证书加密和https访问的模拟提交
与传统的UI控件重绘相比,cocos2d-2D游戏引擎
OpenCV-开源图像库
第三方(非官方)组织,公司和个人提供的代码也很多,它们也是API。 这些代码中有些是免费的,有些是收费的; 有些是开源的,有些是封闭的。 这些代码大多数是为特定的应用程序域编写的,有时也称为框架或库。 例如,基于C语言的图形界面库GTK,基于C的网络库ACE,基于Java的大数据处理平台Hadoop,基于Python的Web开发框架Django和基于Java的前端开发框架React JavaScript。
全球最大的代码托管网站GitHub也贡献了很多出色的代码,其中大多数都是开源的和免费的。 作为一个开源代码库和版本控制系统,Github拥有超过900万开发人员用户。 随着越来越多的应用程序迁移到云中,Github已成为管理软件开发和发现现有代码的首选方法。 。 这些第三方API种类繁多且种类丰富。 我们应该大胆使用它们,并尝试避免重新创建轮子。
常见问题:
假设您要在表单模块中声明一个函数,将其粘贴并运行,VB会告诉您:编译错误...在类或对象模块中,声明语句不允许作为Public成员使用。 ..看起来很糟糕,实际上,您需要做的就是在声明之前添加一个Private。 别忘了,但这将使该功能仅在表单模块中可用。 在某些情况下,由于函数,常量或其他名称共享相同的名称,因此会出现类似“歧义名称”的提示。 由于大多数函数都是别名的,这意味着您可以通过Alias子句使用其他名称代替其原始名称,因此您只需要更改函数名称,它就可以正常工作。
简介:API随处可见,它屏蔽了许多底层细节,实现了许多常用功能,并大大简化了程序员的工作。 很好地使用API,只需花一半的精力就能获得两倍的结果!
客服支持
微信咨询
售后