跳至主要內容

第3章-评价API好坏标准

引领潮流大约 3 分钟软件框架设计艺术archive

####1、方法和字段标识访问 一个API,就是一对类以及类中方法和字段的集合 严格限制除API以外,方法和字段标识访问。 用户采用反射调用隐藏的API,说明存在某种问题

####2、执行程序读取写文件及其内容 配置文件,读取内容

####3、环境变量和命令行选项 环境变量会影响平台移植性

####4、文本信息也是API 程序输入输出文本也是api,eg:管道

####5、协议 网络协议,socket http等

####6、行为 api提供行为效果,不要改变api当前调用方式

####7、国际化支持和信息国际化 api文档支持

####8、API广泛定义 广泛的共识

####9、检查API的质量 要求清单 1、可理解性:设计易于被对方程序员理解的api 2、一致性:API开发过程中最好保持一致风格(stable API) 3、可见性:良好的文档和示例demo

原因:每个人世界观都会受限于自己的视野,离我们近事物,我们可以看清楚,但当事物处于视野临界就有些模糊,超出我们的视野,就会消失。

对于一个优秀的API来说,它所涉及的概念必须处于用户视野范围内,否则他们就无法理解这些概念。API设计者需要理解其目标用户普遍具有的知识,并在此类知识的基础上设计API.

写法风格要一种,定义好的接口不要轻易改变

文档尽量要丰富,提供可运行的demo,减少用户查看源码来解决问题

API用户更关心是如何完成他们工作,用户更愿意去看一些例子,从例子中查找与自己需求关联最紧密的内容,只要将源码复制过来既可以工作

####9、简单的任务应有简单的解决方案 API要根据目标受众来分包api 解决方案:把一个API拆分成两个或多个组成部分 一部分针对调用功能的开发人员,另一部分放在独立包(或特有命名空间),用来方便他人扩展当前的模块功能 eg:JavaMail ,开发人员关注的发送邮件或从邮件服务器获得邮件列表,但是他必须花费大量时间来学习这些API,目标用户需求只想收发邮件,而不是扩展协议,优化方向错了

####10、保护投资 API用户是最珍惜的宝贵财富,用户的工作也应该受到尊重

提供新的版本更迭,保护api用户已写代码不要改变,原来用户写的代码,付出的努力不要化为乌有