作者回复: 有几本可以了解一下,《计算机程序的解释与构造》(Structure and Interpretation of Computer Programs,SICP),还有《Haskell 趣学指南》(Learn You a Haskell for Great Good!),《函数式编程思维》(Functional Thinking)。
作者回复: 这个比喻…有点道理
作者回复: 观察和解释都很到位。
作者回复: 如果你看到了差异,我的目的就达到了。
作者回复: 是的,典型的标题党式理解问题。:)
作者回复: 恭喜你认清了一个概念
作者回复: 重构,从理解重构开始。
作者回复: 你没有在这个类里面添加新类的实例。
public class T1Dao {
private NewCommon target;
...
public void printName(String name) {
System.out.println("Dao层的name");
}
}
作者回复: 最后一步叫“搬移”,就是把服务类的方法删除,在通用类里增加。用 IDE 的“重构”动作完成,它会替你搞定所有问题。
作者回复: 确实,他的理解是错的。
作者回复: 重写和重构是两个套路,重写基本上需要重新设计,重构一方面可以在日常工作中应用,一方面可以用以发现代码中的结构。
作者回复: 重写不是问题,别说重构就好。