怎样设计接口
Posted yutingliuyl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样设计接口相关的知识,希望对你有一定的参考价值。
依据资料和经验总结。
要求:
- 命名:
- 命名规则和风格统一、规范;
- 命名清晰明白,不冗余,不模糊;
- 有意义:清晰和有意义的命名比简略而模糊的命名更应受到青睐;
- 功能
- 职责明白:功能尽量单一;
- 充分理由:不要随便有新功能就添加新接口;无意义的接口仅仅会添加维护的难度;
- 将功能层和策略层分开:
- 功能是基础数据。不易变。
- 策略是表层数据,易变——策略能够使用參数改动;
- 低耦合:降低不同接口间的依赖。
- 一个接口不应随着还有一个接口的变化而变化;
- 一个接口不应以某几个接口为前提而存在。
- 完备性:
- 考虑各种參数变化的情况。
- 考虑各种參数为default或为0的情况。
- 可扩展性:为以后可能会添加的參数预留余地,尽量不要写死;
- 參数
- 不超过5个;
- 从做到右,依照參数easy变化的程度排列;
- 尽量提供默认值;
- 若超过5个,把相似的数据放入到一个json或list等数据结构中;
- 禁止任意扩展:理由见“功能”部分。
- 參数尽量是原生数据结构。少用对平台依赖的数据结构。
- 分析角度:明白角度,不要一会以角色设计,一会以功能设计。
- 必要信息:
- 初始信息
- 初始化是否完成
- 初始化完成后的基本信息(如:list或dict的长度——能够看出是否为0)
- 中间信息
- 数据源是否变动
- 数据长度是否改变(须要视重要程度决定是否需打印该信息)
- 返回信息
- 是否成功?
- 失败原因?
- 初始信息
參考文献:
以上是关于怎样设计接口的主要内容,如果未能解决你的问题,请参考以下文章