API通用设计原则
2013-12-13 10:53
218 查看
什么是好的API?
· 完备(Be Complete)
对确定重点支持的用户场景具有完备的功能支持。就是说,用户通过对一组API的调用能够完成预期的功能。
· 不冗余(Be Minimal)
在完备的前提下,API只提供最小的功能集合。不缺少、不冗余。
· 简单清晰(Be Simple & Clear)
接口设计简单清晰。每个接口都有自己明确的语义,并只专注于尽量单一的功能。产品概念简单、关系清楚。
· 易于学习(Be Easy to Learn & Use)
符合用户的直觉;接口设计有统一的范式,用户可以举一反三。极致是没有文档用户也知道怎样调用接口。
· 可扩展(Be Extensible)
设计具有扩展性,能够在一定程序上适应变化,API在发展中具有“后向兼容性”(backward-compatibility)。
· 完备(Be Complete)
对确定重点支持的用户场景具有完备的功能支持。就是说,用户通过对一组API的调用能够完成预期的功能。
· 不冗余(Be Minimal)
在完备的前提下,API只提供最小的功能集合。不缺少、不冗余。
· 简单清晰(Be Simple & Clear)
接口设计简单清晰。每个接口都有自己明确的语义,并只专注于尽量单一的功能。产品概念简单、关系清楚。
· 易于学习(Be Easy to Learn & Use)
符合用户的直觉;接口设计有统一的范式,用户可以举一反三。极致是没有文档用户也知道怎样调用接口。
· 可扩展(Be Extensible)
设计具有扩展性,能够在一定程序上适应变化,API在发展中具有“后向兼容性”(backward-compatibility)。
相关文章推荐
- 献给乐于钻研Linux技术的朋友---Bridge-Howto
- Birdeye绘制网络拓扑图Demo
- 在.NET使用JSON作为数据交换格式
- 25个增强iOS应用程序性能的提示和技巧(初级篇)
- 裤子尺寸参考与衣服尺寸参考
- CSharp命名风格
- asp.net获取ip地址的方法
- [Cocos2d-x]节点的尺寸大小
- Java中abstract和interface的区别
- maven私服-nuxus安装
- VMware & Ubuntu下建立Qt5.1.1环境
- 数据库为何要建立索引
- 深入理解linux内核v4l2框架之videobuf
- ORACLE用PL/SQL提交数据后执行回滚的方法
- Java Socket实现HTTP客户端来理解Session和Cookie的区别和联系
- wifi
- 嵌入式Linux操作系统的驱动程序开发要点
- mysql存储过程,根据日期产生序列号{日期最为序列号前缀,后面数字依次递增。当日期变化(即前缀变化)后面数字重新从一开始}
- 编译Linux版本飞鸽传书的不完全解决办法
- 人情世故&潜规则