前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一分钟了解“好”接口的设计与实现

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

作者头像
架构师之路
发布2018-03-02 16:17:41
6780
发布2018-03-02 16:17:41
举报
文章被收录于专栏:架构师之路架构师之路

一、好接口的特性

  • 易读
  • 易用,难于误用
  • 功能独立
  • 容易扩展

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

  • 只做并做好一件事

函数名自解释

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

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

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

  • 实现永远不能影响接口

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

不能对外暴露实现细节

  • 最小化访问

尽量使用私有化成员

注意信息隐藏

  • 注意文档与注释

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

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

  • 不要到处拷贝代码
  • 原子性尽量在一个接口内保证
  • Fail-Fast原则

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

  • 避免数据直接访问,而是提供访问方法
  • 注意参数与返回值类型

尽量明确类型

能不用string尽量不用

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

  • 参数个数不宜太多

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

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

你见过2000行的接口么?

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

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-12-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构师之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档