我们在写代码时,经常会碰到有多种操作可以采用一个接口来完成的情况。
比如一个员工信息,我在提供查询接口时,支持员工id和员工名称的查询。
这样我们就可以采用一种查询接口
这样我们只要写一个接口就可以满足两种参数的查询了,看起来这个程序员省了很多事情,少写了一个方法。
但是给后续工作就带来了麻烦。
首先我们要统计员工id和员工名称这量种查询分别要占多少的量,本来我们有现成的统计每个接口访问量的工具,但是由于这个是通过参数来区分的,我们就无法做到了。
其次,当我们不再支持员工名称查询时,我们就需要修改这个接口,这样就会殃及到原先用员工id查询的系统。
比如一个员工信息,我在提供查询接口时,支持员工id和员工名称的查询。
这样我们就可以采用一种查询接口
class UserIdDO{
private long userId;
private String userName;
}
UserDO queryUserById(UserIdDO userIdDO){
......
}
这样我们只要写一个接口就可以满足两种参数的查询了,看起来这个程序员省了很多事情,少写了一个方法。
但是给后续工作就带来了麻烦。
首先我们要统计员工id和员工名称这量种查询分别要占多少的量,本来我们有现成的统计每个接口访问量的工具,但是由于这个是通过参数来区分的,我们就无法做到了。
其次,当我们不再支持员工名称查询时,我们就需要修改这个接口,这样就会殃及到原先用员工id查询的系统。