出现这个问题是因为我在排查 Toast 组的代码中, 发现现在的 API 调用感觉不够清晰, 有点像老奶奶的裹脚布一样长, 想修改但是不知道如何改.
这里参看了很多相同组件的 API 设计, 百花齐放, 我也不知道该怎么办了.
这里找了一篇文章说的挺好: 如何设计一个优秀的 API , 可以参考下!
原则
对于用户:
- 易学习:有完善的文档及提供尽可能多的示例和可 copy-paste 的代码,像其他设计工作一样,你应该应用最小惊讶原则。
- 易使用:没有复杂的程序、复杂的细节,易于学习;灵活的 API 允许按字段排序、可自定义分页、 排序和筛选等。一个完整的 API 意味着被期望的功能都包含在内。
- 难误用:对详细的错误提示,有些经验的用户可以直接使用 API 而不需要阅读文档。
对于开发者:
- 易阅读:代码的编写只需要一次一次,但是当调试或者修改的时候都需要对代码进行阅读。
- 易开发:个最小化的接口是使用尽可能少的类以及尽可能少的类成员。这样使得理解、记忆、调试以及改变 API 更容易。
开发
- 站在用户的角度
- 后续的需求能拓展
- 尽量少的做事儿是抑制 API 设计错误的有效方案
- 对外文档清晰和规范,
- 方法优于属性
- 工厂方法优于构造函数
- 避免过多继承
- 避免由于优化或者复用代码影响 API
- 面向接口编程
- 扩展参数应当是便利的
- 对组件进行合理定位,确定暴露多少接口
- 提供扩展点
- 本文作者:烈风裘
- 本文题目:如何设计组件的API
- 本文链接:https://xiangst0816.github.io/blog/ru-he-she-ji-zu-jian-de-di-API/
- 版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!