public interface IUserManager {
/**
* 这种编写不好:方法 职责 不 清晰, 不 单一, 不要 让 别人 猜测 这个 方法 可能 是 用来 处理 什么 逻辑 的。
* 在 IUserManager 中
* 定义 了 一个 方法 changeUser,
* 根据 传递 的 类型 不同,
* 把 可变 长度 参数 changeOptions 修改 到 userBO 这个 对象 上,
* 并 调用 持久 层 的 方法 保存 到 数据库 中。
*
* 设计模式之禅(第2版) (Kindle 位置 395-397). . Kindle 版本.
* @param userBo
* @param changeOptions
*/
void changeUser(IUserBo userBo,String ...changeOptions);
/*----------------------------------------------------------------*/
/**
* 需要写成这样,具体到方法是用于干嘛的
* 需要单一责任
*/
void changeUserName(String newUserName);
void changeHomeAddress(String newHomeAddress);
void changeOfficeTel(String telNumber);
/**
* 接口一定要做到单一职责,类的设计尽量做到只有一个原因引起变化
*/
}