一分钟了解“好”接口的设计与实现

一、好接口的特性

  • 易读

  • 易用,难于误用

  • 功能独立

  • 容易扩展


二、好接口设计的基本原则

  • 只做并做好一件事

      函数名自解释

      不恰当的函数名,往往是不恰当设计的征兆

  • 如果没做到上一点,就将函数分解

      只增加,永远不要删除函数与接口(你永远不知道这个接口被谁在使用)

  • 实现永远不能影响接口

      举例:不能假定函数调用者只能使用hash

      不能对外暴露实现细节

  • 最小化访问

      尽量使用私有化成员

      注意信息隐藏

  • 注意文档与注释

      接口不是只写给自己(即使只给自己,也应该有说明)


三、好接口实现的基本原则

  • 不要到处拷贝代码

  • 原子性尽量在一个接口内保证

  • Fail-Fast原则

      出错尽量早点返回,交给上层处理,不要勉强抢救

  • 避免数据直接访问,而是提供访问方法

  • 注意参数与返回值类型

      尽量明确类型

      能不用string尽量不用

      使用float的地方尽量用double,64bit

  • 参数个数不宜太多

      如果过多,就要考虑接口的合理性了


你见过没有注释的接口么?

你见过2000行的接口么?

你见过20个参数的接口么?


你见过什么更奇葩的接口?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值