以下是引用神vLinux飘飘在2010-11-26 23:59:07的发言:
我的观点是这样:
要看你的类是否被广泛的使用,类上的方法是否也是非常常用的方法
假如说
public void addMilisecond(long t)
public void addSecond(long t)
public void addMinute(long t)
public void addHour(long t)
public void addAll(long hr,long m,long s,long mili)
这几种方法一般只会在一两个地方使用到,那么你就没必要放在一个类中,尤其是Model类。因为当使用的人多的时候,意味着看的人也多,此时维护代码的精简则是非常有意义的事情。再如果这个类还是一个公共类,需要发布出去给其他系统使用的,那么精简API以及将业务逻辑剥离则是更有必要的事情。
那么这些方法放在那里呢?可以考虑用Util来作。
比如说你这个类叫Time.java,那么你可以建立一个TimeUtil,然后将Time中不常用的业务方法移步到TimeUtil中来完成,这样别人在看Time的时候不会因为太繁琐的方法而疯掉。
再回到方法功能相似的问题
public void addMilisecond(long t)
public void addSecond(long t)
public void addMinute(long t)
public void addHour(long t)
这几个方法看起来都是一样的意思,就是增加时间。so,我认为此时应该判断下,程序所依赖的时间精度是多少,如果是用秒就能描述清楚的业务逻辑,那么就可以将其他几个方法都清掉。
因为addSecond(60*2)和addMinute(2)实际上是一样的,你的代码并没有精简多少。
=======================================================================我的观点是这样:
要看你的类是否被广泛的使用,类上的方法是否也是非常常用的方法
假如说
public void addMilisecond(long t)
public void addSecond(long t)
public void addMinute(long t)
public void addHour(long t)
public void addAll(long hr,long m,long s,long mili)
这几种方法一般只会在一两个地方使用到,那么你就没必要放在一个类中,尤其是Model类。因为当使用的人多的时候,意味着看的人也多,此时维护代码的精简则是非常有意义的事情。再如果这个类还是一个公共类,需要发布出去给其他系统使用的,那么精简API以及将业务逻辑剥离则是更有必要的事情。
那么这些方法放在那里呢?可以考虑用Util来作。
比如说你这个类叫Time.java,那么你可以建立一个TimeUtil,然后将Time中不常用的业务方法移步到TimeUtil中来完成,这样别人在看Time的时候不会因为太繁琐的方法而疯掉。
再回到方法功能相似的问题
public void addMilisecond(long t)
public void addSecond(long t)
public void addMinute(long t)
public void addHour(long t)
这几个方法看起来都是一样的意思,就是增加时间。so,我认为此时应该判断下,程序所依赖的时间精度是多少,如果是用秒就能描述清楚的业务逻辑,那么就可以将其他几个方法都清掉。
因为addSecond(60*2)和addMinute(2)实际上是一样的,你的代码并没有精简多少。
好帖,顶了。