“API”之我见

简介:        最近,我读了CSDN上面的一篇文章《API:互联网是如何在幕后工作的?》(http://www.csdn.net/article/2015-01-26/2823692)。

       最近,我读了CSDN上面的一篇文章《API:互联网是如何在幕后工作的?》(http://www.csdn.net/article/2015-01-26/2823692)。作者认为,没有API,应用之间的通信将会被扼杀;软件开发者将不断重写并执行相同功能的软件;创新的脚步将会放缓。

        确实,在大型的软件系统中,API随处可见。大到一个软件系统,小到几行程序,只要具备了一定的特征,都可以被称作API。那么,什么是API?它有哪些特征呢?

        API的定义

       在软件系统中,一个成型的(封装好的)、可以实现特定功能的、可供其它模块调用的程序就叫做APIAPI的形象化表示如图1所示。

1 API的形象化表示

        如图1所示,“特定功能模块”可以被“软件模块A”、“软件模块B”和“软件模块C”调用,那么该“特定功能模块”就是一个API

 

        API的特征

       作为一个API,它有可能被很多的模块调用,其主要特征包括:

       第一,其实现的功能具备通用性,很多的软件模块都涉及到该功能。

       第二,其功能具备稳定性,已经过了严格的测试。

       第三,其执行效率较高,已经过一定的优化。

 

       API的实例

       把实现“将字符串中的大写字母变为小写字母”功能的程序写成一个函数,如下所示:

/**********************************************************************
*功能描述:将字符串中的大写字母变为小写字母
*输入参数: *pszInStr-输入/输出字符串
             iInLen-字符串长度
*输出参数: *pszInStr-输入/输出字符串
*返 回 值: 0-成功  -1-失败
*其它说明: 无
*修改日期         版本号      修改人         修改内容
* ---------------------------------------------------------------------
* 20150330         V1.0     Zhou Zhaoxiong      创建
***********************************************************************/
INT32 StrToLowerCase(UINT8 *pszInStr, UINT32 iInLen)
{
    UINT32 iLoopFlag = 0;

    if (pszInStr == NULL)       // 判断输入字符串是否为空
    {
        printf("StrToLowerCase: Input string is NULL!");
        return -1;              // 返回-1表示该函数执行失败
    }

    for (iLoopFlag = 0; iLoopFlag 

 

       该函数就可以被当成一个API来使用。当软件程序中涉及到需要将大写字母变为小写字母时,都可以直接调用该函数而不需重新编写。

 

       总结

       软件代码的模块化是提高编程效率的一个重要的方法,而封装好的一个模块其实就是一个API。善于调用API,不仅能够提高工作效率,而且能够在一定程度上提高软件代码的可读性。因此,作为一名合格的软件开发人员,一定要学会编写并调用API

 

 

 

(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,微信号:245924426,欢迎关注!)

目录
相关文章
|
2月前
|
自然语言处理 API 开发者
One API接入豆包
本文详细介绍如何将One API集成,以调用豆包模型。步骤涵盖火山引擎注册、实名认证、创建在线推理接入点及生成API Key,并在One API中配置相应渠道与模型映射关系。适用于希望利用豆包模型进行自然语言处理任务的开发者。关键词:火山引擎、在线推理、接入点、模型名称、API Key、字节跳动豆包、One API。如需进一步了解或遇到问题,欢迎留言交流。
294 2
One API接入豆包
|
2月前
|
安全 物联网 API
API的科普
在当今这个数字化时代,信息如同血液般在无数个系统、应用和设备之间流淌,而这一切高效、无缝的交互背后,离不开一个至关重要的技术组件——API(Application Programming Interface,应用程序编程接口)。API作为数字世界的桥梁,不仅连接了不同的软件系统,还推动了数据共享、业务自动化以及创新服务的不断涌现。本文将深入探讨API的定义、作用、发展历程、关键技术、应用场景以及未来趋势,旨在揭示API在数字化转型中的核心价值和无限潜力。
201 0
|
6月前
|
安全 API 数据安全/隐私保护
【安全每日一讲】API是什么?解密API背后的奥秘
API,全称Application Programming Interface,是预定义的函数集合,用于系统间数据传输和指令交互。API简化了应用程序间的数据共享,扩展功能,实现跨平台交互,并确保数据安全性。常见的API类型包括RESTful、SOAP、RPC、GraphQL等。API的优势在于降低开发难度,提升效率,促进数据共享,优化用户体验。广泛应用于社交网络、电商平台和金融领域。然而,API也面临认证授权、数据泄露和恶意攻击等安全问题,需采取HTTPS、OAuth2等12种方法保障安全。
|
搜索推荐 API 数据处理
深入了解唯品会API及其应用
深入了解唯品会API及其应用
237 0
|
Java API Maven
环信API方法介绍
环信API方法介绍
119 0
|
物联网 数据挖掘 大数据
API的应用范围主要有哪些方面?
API的应用范围主要有哪些方面?
|
人工智能 供应链 安全
电商API是什么?API集成对电子商务平台的好处
我国电商保持快速的增长状态,近年来增速有些放缓,从2018年底开始进入了红海,电商也就变得难做起来,这意味着国内电商行业的竞争将更加激烈,电商体系加速成熟,运营成本日益增大,产品利润低,低价竞争无利 润,加上2020年突如其来的疫情,电商企业运营亟待改进。
|
机器学习/深度学习 程序员 API
分享两个超牛的开源API项目,程序员需要的免费API都在这里了!
我们程序员要和各种 API 打交道,比如在网站上展示实时天气,在电商网站展示物流动态,在外卖配送中展示位置信息,这些 API 都要我们自己去实现显然是不现实的。
|
云安全 数据采集 运维
万丈高楼平地起,每个API皆根基
万丈高楼平地起,每个API皆根基
|
敏捷开发 Java API
献礼最强API阵营,swagger2Api利器,不可拒绝
献礼最强API阵营,swagger2Api利器,不可拒绝
151 0
献礼最强API阵营,swagger2Api利器,不可拒绝