服务热线:400-0033-166
万商云集 - 企业数字化选用平台

企业首选的

数字选用平台

如何判断一个 API 是否优秀?

2020-12-21 15:15:48 阅读(204 评论(0)

到目前为止,我们已经负责API近两年了。在过去的两年里,我们发现现有的API存在越来越多的问题,但许多API一旦发布就无法修改,需要立即升级和维护。一旦API发生变化,可能会给相关调用器带来巨大的成本。用户需要调查所有调用代码和所有相关部件,这对他们来说是额外的。如果你在努力完成这些工作后发现了相关的bug,对用户的打击会更大。如果API经常发生变化,用户将对提供商失去信心,从而影响当前业务。但是为什么要修改API呢?为API看起来更漂亮?为了提供更多的功能?为提供更好的性能?还是觉得是时候改变了?对于用户来说,他们更喜欢使用稳定但不那么时尚的API,这并不意味着我们不再改进API。当糟糕的API带来越来越多的维护成本时,我认为是时候重构它了。如果我能回头再做一遍,那么我心目中优秀的API应该是什么呢?判断一个API是否优秀,不仅仅是根据第一个版本来判断,而是看API是否还能随着时间的推移而存在,是否还能保持良好。槽糕有各种各样的API接口,但对于用户来说,好的API接口必须满足以下几点:易于学习:有完善的文档,提供尽可能多的示例和可复制-与其他设计工作一样,paste的代码应该应用最小惊喜原则。易于使用:没有复杂的程序,复杂的细节,易于学习;灵活的API允许按字段排序、自定义页面、排序和筛选。一个完整的API意味着包含所有预期的功能。难误用:对于详细的错误提示,一些有经验的用户可以直接使用API而无需阅读文档。对于开发人员来说,要求是不同的:易于阅读:编写代码只需要一次,但在调试或修改时需要阅读代码。易于开发:最小接口是使用尽可能少的类和尽可能少的类成员。这使得更容易理解、记忆、调试和改变API。如何做到以上几点,以下是一些总结:1、 如果一个API被广泛使用,就不可能了解所有使用API的用户。如果设计师想要设计广泛使用的API,他们必须从用户的角度来理解如何设计API库,以及如何设计这样的API库。2、 在设计过程中采用良好的设计理念,如果能以下方式设计,将使API生命更长,收集用户建议,模拟用户,确保API设计易于使用,合理确保后续需求可以扩展完成第一版尽可能少的内容,因为新需求可以扩展,因此,尽量少做事是抑制API设计错误的有效方案,提供清晰的API和文档规范,避免用户错误使用API,特别是用户知道和误用API(见第一节),以下还列出了一些具体的设计方法:方法优于属性工厂方法优于结构函数,避免过度继承,避免API面向接口编程扩展参数的优化或重用代码,应方便组件的合理定位,确定有多少接口提供扩展点3、 在设计API时,一定要避免极端意见,特别是以下几点:必须是美丽的(API不一定是美丽的)API必须正确使用(用户很难理解如何正确使用API,API设计师应该充分考虑API的误用:如果API可能被误用,那么它将被误用)必须是简单的(我们总是面临复杂的需求,两者兼顾的API是更好的API)必须具有绝对兼容性(性能可以通过其他方式优化,不应影响API的设计)(虽然本文一直提到如何保证兼容性,但我们仍然需要意识到,在某些情况下,不兼容性是可以容忍的)4、 API设计完成后,需要对API进行有效的评审,评审的重点如下:用例驱动,评审前必须提供完善的用例,以保证用例的合理性和完整性。系统中其他模块的接口风格是否一致,对称接口的设计是否一致。一致性,是否与系统中其他模块的接口风格和对称接口的设计一致。简单明了,API要简单易懂,容易学习和使用的API不容易被误用,给我们带来更多的麻烦。API应该尽可能少。如果API可以暴露或不暴露,不要暴露他。当用户真正需要它时,成为一个开放接口还不算晚。支持持续改进,API能否通过扩展方式轻松增加功能和优化。5、 提高API的可测试API需要进行测试,测试不应依赖于实现。充分测试的API,特别是经过严格的“兼容性集成测试”的API,可以确保在升级过程中没有兼容性问题。兼容性整合测试是指从用户的角度使用API的一组测试用例集。API升级后,检测这组测试用例是否能完全满足预期,并尽可能发现兼容性问题。6、 对于每个API设计师来说,确保API的向后兼容性都渴望实现“向后兼容性”,因为当前的API用户和潜在的API用户都只相信那些可兼容的API。但向后兼容有多层次的意义,不同层次的向后兼容也意味着不同的重要性和复杂性。7、 为了逐步改进过去,我们总是希望完全推翻现有的“不合理”设计,然后根据当前的“美丽”想法重新设计API,但一段时间后,我们会遇到同样的情况,需要再次推翻。如果没有有效的逐步改进方法,依靠推翻现有设计,重新设计API只能让我们回到起点,重现之前的过程。在API兼容的同时,要有一套有效的持续改进方法,改进API,使之更好。8、 把握API的生命周期。每个API都有一个生命周期。我们需要延长API的生命周期,并在API的生命周期结束时平稳地消亡。告诉用户我们是如何设计的,避免误用,并提供指导。错误的使用通常是缩短API使用寿命的主要杀手提供试用期。API一开始不可能是稳定的。只有经过试验,API才能有更强的生命力来对API进行分类:内部使用;二次开发和使用;在开发或试验过程中;稳定性;放弃API。在避免滥用API的同时,我们可以通过调整API水平来扩大其影响力,更优雅地结束API的生命周期。API开发的过程其实是一个沟通的过程。双方的沟通是API用户和API设计师。9、 当API不可避免地消亡或改变时,我们应该接受并面对这一事实。以下是在保证兼容性的前提下调整API的几种方法:将API标记为弃用,重建新的API。如果API不可避免地消亡,这是唯一的办法。添加额外的参数或参数选项来实现功能添加,将现有的API分成两部分,并提供一个简化的核心API,通过包装核心API实现过去的API。这通常用于解决用户需要精简代码的版本。在现有API的基础上包装,提供功能更丰富的包或类别

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

有哪些专业高效的进销存软件破解版推荐

现在有不同的企业规模不一样,对于自己公司的管账职能要求也不一样,为了追求工作起来方便,所以很多企业会需要用到很多进销存软件,那么今天就来推荐一下进销存软件破解版。 1、星空商务进销存通用版 这款星空商务进销存通用版软件其实…查看详情

成本低传播广 一站式网络推广平台为企业赋能

一站式网络推广平台功能包含新闻媒体、自媒体、短视频、软文、抖音KOL、小红书博主、百科、问答、贴吧、论坛、友链、文案代写等,以“网络技术驱动全网推广”为使命,自主发布、自主下单、自主接单,依托云计算技术、平台大数据、订单交易数据和AI智能网…查看详情

生产管理ERP—让生产管理回归简单

内部信息难共享、部门协作不流畅、客户满意度低,是当前生产管理企业面临的巨大困扰。在互联网技术的推动下,生产管理ERP应运而生,让采购管理、项目管理、财务管理、人力资源管理、质量管理等环节走上智能化、自动化道路,真正将管理做到“看得见,管得着…查看详情

2021玄幻小说排行榜前5有哪些?哪些小说软件能免费读?

现在越来越多的年轻人都喜欢看动漫、读小说,特别是近几年很多玄幻类小说的IP都开始影视化、动漫化,但是由于动漫的更新进度较慢,很多粉丝都想先一睹原著小说为快。所以,小万整理了2021年玄幻小说排行榜前10的小说,以及能够读到这些小说的APP,…查看详情

2021最新企业能源管理系统公司排名

备受关注的能源管理系统到底有什么用?能源管理系统可以帮助工业生产企业在扩大生产的同时,合理计划和利用能源,降低单位产品能源消耗,提高经济效益,那么2021最新企业能源管理系统公司排名到底是一个什么样的情况?一起来看看。 1. 启迪思安能源管…查看详情

网络版权登记协助侵权纠纷解决 快来了解一下!

网络著作权也是受到网络著作权法保护的,网络著作权法规定了侵犯网络著作权的赔偿标准,发生网络著作权侵权纠纷时,侵权人应当承担因此而遭受的损失。想要进行赔偿需要先对侵权行为进行认定,网络版权登记所取得的版权证明可以作为有利证据,那么,网络著作权…查看详情

网站备案怎么办理?详细流程几步搞定!

  尽管我国早已启动了网站备案工作,但许多网站仍然处于未备案的状态,这就让不法分子钻到漏洞,对网站发起攻击。目前,所以使用国内服务器的网站都必须进行网站备案,备案不仅是为了保障网站经营者和网民的权益外,在一定程度上也能避免网站成为攻击者的目…查看详情

淘宝目标客户群体是哪些?

  优质答案(1)  全店。淘宝现在的市场几乎都是曾经购买过商品的买家,每个人都有不同的购买习惯,风格偏好,购买能力,这也是缤纷缭乱的淘宝商品中给买家的便利,每个买家都被打好标签,根据分发的流量不同,分发的宝贝也不同,具体点说 就是淘宝数…查看详情

想要入坑视频制作的小伙伴一定要看完本文

现在市面上有许多制作视频的软件,很多想入坑的网友都不知道怎么选择合适的软件,下面我为大家整理出来了制作视频的软件哪个好。想要入坑的小伙伴可以来看看了。 1.会声会影 会声会影是一个综合能力十分强大的视频编辑软件,因此我们把它…查看详情

幼儿学知识软件哪个好 幼儿学知识软件排行榜

  孩子在成长期的教育是很重要的,现在市面上有很多的孩子学习的软件,下面小编就来给大家详细介绍一下幼儿学知识软件哪个好 幼儿学知识软件排行榜这一块的相关内容,希望能帮助到大家。  幼儿学知识软件排行榜  1、《叽里呱啦》  多元化的学习…查看详情

企业搭建网站 | 申请域名该去哪?

申请域名该去哪?其实有很多的渠道都可以进行域名申请,主要分为国内和国外两大平台。那么如何判断自己应该选择国内或国外平台呢?主要根据你后续搭建的网站在哪儿运营做判断。接下来小万主要给大家讲讲在国内平台如何申请域名以及它的几个步骤。 图片来源于…查看详情

商标注册后如何申请共有?以下两个方法可分别适用不同的情况

商标注册可以由多个主体共同申请办理,这样申请下来的商标专用权由多名申请人共同拥有。这是在提出商标申请的时候,就明确了该商标为共有商标,那么,商标注册后如何共有呢?图片来源于网络共有商标的概念:两个以上的自然人、法人或者其他组织可以共同向商标…查看详情

推荐几款免费的电脑录音软件,好用又方便

随着声优的出现,好多用户都争相模仿,这就用到了电脑录音软件了,但是在哪里找免费的电脑录音软件呢?今就让小编我给大家推荐几款免费的电脑录音软件,感兴趣的小伙伴一起来看一下吧。 1.迅捷录音软件 该软件是一款专门录制音频的软件…查看详情

免费ppt模板下载网站有哪些?

如何在优品PPT里面下载模板?可以在优品PPT的官网上下载模板。 因为优品PPT是一个提供PPT模板资源的网站,官网上提供了大量的免费和付费模板供用户下载使用。 用户可以通过以下步骤在官网上下载模板:首先,进入优品PPT官网;其次,在首…查看详情

数据库sql语句大全实例

查询数据库中有哪些表的sql语句?一、查询指定模式下的所有表db2LISTTABLESFORSCHEMA模式名二、查询当前模式下所有表及信息db2selecttabnamefromsyscat.tableswheretabschema=CU…查看详情

最新文章