优秀API的几大特征

优秀的API究竟应该怎么设计,它包含什么特征,可能有过API相关开发经验并且认真思考过的朋友都有这个疑问。

  1. 隐藏实现细节
    创建API原因就是为了隐藏所有实现细节,防止对客户造成影响。具体包括对于变量、方法与类的隐藏。对于变量的返回,我们不应该返回非const的指针或者引用的私有数据成员。这会破坏封装。
  2. 最小完备性
    完备的API是指期望有的功能都包含了。最小的完备则是在实现所有功能前提下我们应该提供最少的public接口。我们需要特别注意以下几点:
    • 在不确定是否需要某个接口时,就不要提供该接口。因为添加功能容易,但是删除某个功能就难了。
    • 避免将函数声明为虚函数,除非有迫切需要。
  3. 易用性
    优秀的API应该简单易用,能使人一目了然。其中我们可以主要关注以下几点:
    • 可发现性,就是通过API自身就能明白API的使用。
    • 不容易被勿用,比如参数列表将bool改成enum,是不是会更一目了然了呢。
    • 尽量使用同一风格的设计方法。其中包括一致的命名风格,参数顺序等。
    • 健壮的内存资源管理,可以通过智能指针进行简化管理。
    • 平台独立性,比如避免出现#if#ifdef等类似的语句。
  4. 优秀完整的文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值