API开发呼吁关键原则和艺术性思想

日期: 2013-09-25 作者:Alan Earls翻译:蒋红冰 来源:TechTarget中国 英文

在API开发过程中,有一些一般性的原则可以使用。首先要考虑的就是编程人员使用的应用程序编程接口(API)。“这意味着这一API设计不仅是关于结构化软件设计,也是关于人性的理解的,” Peter Hendriks说。他是IT架构师及位于荷兰Info Support的Java卓越中心的领导者。

一个好的API支持有限的一组良好定义的用例和场景。从创建样例代码,使用API用于所有这些场景开始,Hendriks说。他解释说,这一样例代码是获得对可用性反馈的最好方法,而且这一代码还稍后还可以用于测试和存档。如果样例代码“确实好”,用户将会复制-粘贴或紧紧地模仿样例。这就是API开发的艺术,他说。

Hendriks使用了教授Ben Shneiderman的可用性模型,用于访问API的可用性。Shneiderman是《Leonardo’s Laptop: Human Needs and the New Computing Technologies》一书的作者。对于Hendriks来说,可用性模型的关键元素包括:

  • 易学性:第一次完成基本任务的难易程度如何?
  • 效率:一旦用户学习的了这一设计,他们执行任务的速度有多快?
  • 可记忆性:当不久后用户返回时,其恢复能力如何?
  • 错误:编辑人员会产生多少错误,这些错误有多严重,从这些错误中恢复的难易程度如何?
  • 满意度:使用这一设计的满意度如何?

API开发在科学的方面来讲,有大量的工具可以使用。例如,静态分析工具,Java代码的FindBugs,在检测问题性API设计和不好的API使用方面效果很好。Hendriks经常使用JSR 305:对软件缺陷检测的注释、提供了简单的注释来声明基本API的标准库,如可选为空提示值或支持多线程。“基于这种注释,FindBugs可以检测许多问题;不仅是在API设计和实现中,也可以在API客户代码中,”Hendriks说。他发现FindBugs易于使用,而且对于防止大量的常见错误都很有用。

许多代码质量工具,如SonarQube,也提供了统计功能应用于API质量中。“例如,LCOM4统计意味着把一个类分成多个类,” Hendriks说。另外,他指出,每一个类中的对代码行数的基础限制,及每个方法中对于参数的限制也降低了API的复杂性。

读者们,你们组织是否也在使用API最佳实践和工具?如果是,他们的优缺点是什么?如果不是,可在下方分享一下你们团队的方法和工具经验,这样我们的专家也好对您的所需提出好的建议。

关于作者

Alan Earls是波士顿地区的一个自由作家,专注于业务和技术,特别是数据存储。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

Alan Earls
Alan Earls

Independent Writer

翻译

蒋红冰
蒋红冰

TechTarget云计算主编,主要负责云计算和虚拟化网站的内容建设。长期专注于IT前沿技术,对云计算、虚拟化、人工智能、区块链等技术都有了解;对行业趋势、市场动态有一定的洞察。

相关推荐

  • 数字化转型:如何更好地利用API和微服务

    API,即应用程序编程接口,它提供给应用程序、开发人员访问其它应用的能力,而又无需访问源码,无需理解内部工作机制细节;简单地说,API就是实现应用与应用连接的一种隐形的桥梁。

  • 金融行业数字转型:利用API构建新IT基础

    从制造业、物流业,银行业到零售业,各行各业的根基都因应用经济的兴起发生着深刻的变革。在互联网和智能手机普及化的推动下,这种现象变得司空见惯。到2021年 ,蓬勃发展的全球应用经济的预估总值将达到6.3万亿美元,相比2016年的1.3万亿美元,增长近5倍。

  • 如何使用Azure API管理服务?

    在云和微服务架构时代,API是数字化业务的通用语言。根据分析公司Forrester Research预测,仅在美国,API管理工具的支出将在未来5年内达到近30亿美元。

  • 私有存储云如何构建?

    如何构建自己的私有存储云呢?在这之前,我们要先退后一步,思考一下云计算到底意味着什么。