[讨论]一个设计方面的问题――登陆这个动作(或叫方法)应该属于User类还是属于Application类(描述系统类)

smalldeer 04-12-08

[讨论]一个设计方面的问题――登陆这个动作(或叫方法)应该属于User类还是属于Application类

User类不说明了,就是能使用系统的用户的类

举例说明Application类
Application类:描述系统的类
属性可以是:系统开启时间,系统关闭时间,系统名,系统描述等
方法有: 系统初始化init(),一些get,set方法

今天想到个问题,比较疑惑

登陆login()方法应该是属于哪个类的呢?
以前都把login方法写在User类中,

现在的想法是:
按流程来看:觉得登陆的动作是User类发出的,但处理的过程是交给Application类来处理的

那我应该怎么样处理login方法的归属问题,请大家指教,
各位应该都碰到过问题,请说说,谢谢

banq
2004-12-11 11:29

这个scope问题很有意思,登陆这个动作我认为应该属于Application,登陆操作的对象是属于User的。

当然,我习惯是尽量避免使用Application,用多例来替代。

macher
2004-12-12 07:55

>>>用多例来替代

同意,应该是属于Application类或Manager类或Controller类,但请问,这跟多例有什么关系么?

banq
2004-12-12 21:06

在Jsp中,有一个scope叫Application,对于初学者,这两者似乎是对应的,Spring中的Singleton也是属于Application,我担心作者可能有这个过渡对应,所以稍微多余地声明一下,尽量使用多例来解决你的Application应用。