API 设计规范
一、 包设计注意事项
共通
() 建议把抽象接口和具体实现放入不同的包
() 建议把 放进上层包,而把具体实现放进下层包
() 考虑把一组大型的 分拆进不同的包
() 考虑把 和实现打包进不同的 包
() 避免 的实现类之间的内部依赖
() 避免把 分拆了太细
() 避免把公共实现类放到 的包中
() 不要在调用者和实现类之间建立依赖
() 不要把没有关系的 放进同一个包
() 不要把 和 ()放进一个包
() 不要移动或者重命名一个已经发布的公共
命名
() (一级)包名以公司(或者组织)的根命名空间来命名
() 使用一个稳定的产品名称或者一个产品系列的名称作为包的二级名称
() 使用 名称作为包名的(三级名称)结尾
() 考虑把仅包含实现的包的名称中包含 这个词(似乎“! "更常见一些)
() 避免使用组合起来的名称
() 避免包名和包内的类名使用同样的名称
() 避免在包名称中使用“"这个词
() 不要使用营销,计划,组织单元(部门)和地理名称
() 不要在包名中使用大写字母
文档
() 为每一个包提供一个 #$%!
() 遵循标准的 的规范
() 在 的开始处用一句短小的话来概括(描述)
() 提供足够多的细节来帮助判断是否需要使用和如何使用该
() 指出该 的入口(主要的类或者方法)
() 包含覆盖主要的,基本功能演示的样例代码
() 包含一个指向开发者指南的超链接
() 包含一个指向手册的超链接
() 指出相关的 集合
() 包含 的版本号
() 用 &标记出不再使用的 版本
() 考虑添加一个版权声明
() 避免过长的包概述
() 不要在发布的 中包含具体实现相关的包
二、 ' 类设计清单(这里的“' 类”个人理解为很多类)