如何判断一个 API 是否优秀?
2020-12-21 15:15:48 阅读(212) 评论(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的基础上包装,提供功能更丰富的包或类别
推荐阅读
- 专利权期限可以续期吗?
在平时很多的小伙伴都不知道专利权期限可以续么的基本情况,而且对专利权期限可以续么都不是很熟悉,下面万商云集*就为大家整理了专利权期限可以续么这方面的相关内容,希望下面的内容能帮助到各位。 一、专利权期限可以续期吗? 专利权期…查看详情
- 常用电脑Win10系统修复软件推荐
有一些人在运用电脑的情况下,因为运转的东西比较多,所以造成电脑出现瘫痪的情况,那么,碰到这种情况就务必要立即解决,不然就会损坏电脑,然而,win10系统修复软件都有什么? 1、MHDD(*盘检测软件 这款APP是可以配合我们…查看详情
- “王老吉”商标侵权案惊天逆转,14.4亿赔偿被撤销!
7月1日,最高人民法院就加多宝与广药集团“王老吉”商标侵权纠纷案作出最新裁定,撤销了加多宝高达14亿元的赔偿,对于加多宝来说,可以算是柳暗花明又一村。但这场持续长达五年的商标纠纷案,无疑会继续发酵。要反转?加多宝发布最新裁定!2019年7月…查看详情
- pdf软件哪个好用?好用的pdf软件推荐
pdf格式的软件其实在平时的时候使用也是比较多的,尤其是在工作当中很多的软件保存格式都会是pdf文件。如果想要打开这个文件,那么就要选择比较好的pdf软件,其实pdf软件也是有很多的。选择到比较好用的,才能带来更好的使用以及体验…查看详情
- b2c电商系统如何开发,以及必备功能应有哪些?
一般来说,当我们聊到关于B2C电商系统的时候,我们更多的情况是在聊单体商店和客户,也就是京东最开始的纯自营形式。这种形式并非说这个平台上有许多商铺,而是用户能够可以自己去选择不用的商铺。那么,作为想要进入电子商务市场的企业,应如何来开发这个…查看详情
- 非主流火星文字输入法-火星文字转换器
最近在抖音、快手、西瓜视频等短视频平台app上掀起了一股重回韩流的风潮,非主流火星文字也受到很多小伙伴的追捧。有哪些好玩又有趣儿的火星文字输入法呢?让我来给你推荐5款非主流火星文字输入法,内容如下:1.特殊文字输入法特殊文字输入法是一款集成…查看详情
- 最受年轻人欢迎的社交软件有哪些?好用的社交软件推荐
很多的年轻人在平时都会选择一些好用的软件来使用,其实现在的软件也是比较多的,找到一款好的社交软件才能够带来更好的体验。那么最受年轻人欢迎的社交软件有哪些呢?接下来就给大家介绍几款比较受欢迎的社交软件吧。 1、微信 其实现在大…查看详情
- 免费的手机定位软件有哪些 手机定位软件排行榜
现在市面上有很多的手机定位软件,而且这些定位软件也是有很大的用处的,下面*就给大家来详细介绍一下免费的手机定位软件有哪些 手机定位软件排行榜这一块的相关内容,希望能帮助到大家。 手机定位软件排行榜 1.iMyFoneAnyTo…查看详情
- 听歌用什么软件好 好用的听歌软件推荐
现在很多的年轻人都喜欢听歌,不同的人群用的听歌软件也有一定的差别,下面万商云集*给大家来详细介绍一下听歌用什么软件好 好用的听歌软件推荐这方面的内容,希望能帮助到大家。 1、《QQ音乐》 这款应用中的歌曲类型是相对较多的,都是一些有…查看详情
- 如何判断一个网站是否在用心真实运营
网站上线后并不是所有网站都会进行真实的运营,尤其是像商业类网站和平台类网站,我们更要学会对其判断,如果一个网站都没有真实的在运营,那就不用在上面浪费大量时间了。那么对于网站应该怎样判断其是否在真实运营呢?下面我们就介绍几种方法。从公告栏、留…查看详情
- 济南网站运营经验总结:网站建设和运营中要注意的要点
济南网站运营在最近几年以迅雷不急掩耳的速度飞快发展。传统商业模式受到电子商务的冲击,线下市场全面缩水,逼得很多传统企业不得不往电商转型。下面就以济南网站运营为例,谈谈网站运营的相关知识。图片来源于网络 济南网站运营过程中,需注意哪些要点?1…查看详情
- 如何进行网站建设?仅5步骤,但要做好网站建设还要考虑3点
现在想要在那么多公司里脱颖而出的话,就一定要做好线上业务,所以说公司建站特别重要!尤其是建立一个好的公司网站,不仅能够吸引访客的注意,或许还能促进成交率。那么如何进行网站建设?*总结了以下几点,希望对你们有所帮助。图片来源于网络 如何进行网…查看详情
- 电脑直播软件哪个好用
在选择电脑直播软件时,以下是几个受欢迎且好用的选择: 1.OBSStudio:OBSStudio(OpenBroadcasterSoftware)有免费、开源的特点,被广泛认可为最强大和稳定的选择之一。它提供了丰富的功能和灵活性,支持多个平…查看详情
- 什么是操作系统 主流的操作系统有哪些?
说起当前最流行的手机操作系统。第1名当然是安卓手机系统。第2名是iOS系统。后面的345678,就不太明显了。说起当前最流行的手机操作系统,第1名当然是安卓手机系统,第2名也就是苹果手机系统。后面的345678等等名次就不太明显了,分别…查看详情
- 视频软件排行榜前十都有哪些?
做视频用软件做的话会更加方便省事一些,而且,里面的功能可以随意使用,但前提是必须要知道视频软件排行榜前十都有什么,选择软件从前十里面做选择会更靠谱,更安全一些。 1、《视频编辑》 免费用户也可以将视频素材做好剪接,诸多功能加…查看详情
猜你喜欢
最新文章

扫码二维码
立即领取《千元实战营销秘籍》
还可免费试用营销管理系统
*如有疑问,请随时拨打免费咨询热线:400-0033-166
邮箱:zjb@iwanshang.com
服务时间:8:30-18:00
软件企业
认定号:川RQ-2018-0216
高新技术企业
认定号:GR201951001121

关注微信公众号
和10万中小企业共同成长

扫码下载APP
享全方位服务一触即达
Copyright © 2004-2022 万商云集(成都)科技股份有限公司 版权所有
蜀ICP备12001963号-2
川公网安备 51010402000322号

快速找产品

找一找哪款产品适合您?
咨询热线:400-0033-166
-


-
电话沟通
获取方案
下载APP
官方微信
扫码下载APP
全方位服务一触即达

关注万商云集
和10万中小企共成长

TOP

企业首选的AI增效平台

400-0033-166
8:30-18:00















































注册有好礼



