关于斑竹的用户注册系统的问题

fuzhou 02-12-26

看了斑竹的用户注册系统的Refactoring的过程,感觉很有启发
可是有个地方没看明白,首先com.XXX.AuthOneDb这个类应该是实现了AuthorizationIF这个接口吧,但是为什么在这个接口中写上

 public static final String authtypeone="local";
  public static final String authclassone="com.XXX.AuthOneDb";

  //第二套密码检查方案 可接上 特定系统 如 通行证系统等
  public static final String authtypetwo="remote";
  public static final String authclasstwo="??";
那么是不是如果有第3套方案,还要来改这个接口那?

初学模式,请各位高手多多指教:)

banq
2002-12-26 15:59

最好将这些写在配置文件中,这样就不要改接口,这里写入接口,也表示这里常量,不必改变,以后深入Refactor时可以写入配置文件中。

fuzhou
2002-12-26 16:06

你说关于这种情况能不能用得到策略模是那,比如说我现在想做一个统一日志的改进,我觉得记日志是每个系统统一的动作,但是记什么就是不一样的了,希望能够实现大体的代码不用改进,只需换掉具体内容就行了,好像和这个用户注册系统的差不多,我本来是把具体的内容看成一种算法,到时候替换具体的算法就行了,这种想法可以吗?


banq
2002-12-26 17:39

可以啊, 日志系统根据具体需求可以是各种设计模式大展宏图的好案例。