这个场景,请问各位高手应该用什么设计模式

freel
freel 2014-11-30 字数 956

场景:

有一个企业系统,用户有职员、老板、经理等,

该系统实现的主要功能就是帮助用户实现一些任务

比如,职员要出差,系统就能够帮忙订票、规划行程,老板就能够审批等

问题是,现在实现的用户角色只有职员、老板两种角色,后期可能会加入

其他用户角色,比如内控人员、审计人员、会计人员等,

用户角色不同,该系统提供的功能也不同,

而且现在无法预测将来会加入什么用户角色及其对应的功能。

请问这种场景应该用什么设计模式,

以保证代码有利于后期实现更多角色时的扩展性?

PS:

其他版面讨论设计模式的几乎没有

只有Programming和SoftEng两个版常讨论些

不过似乎都不怎么待见设计模式

我想应该是各位大侠已经达到了“手中无剑、心中有剑”的境界了

我这个项目,是用Java做的

之前为了一个项目临时学了些Java语言、开发环境、软件工程方面的知识

后来又做了几个项目,但感觉代码非常凌乱,想扩展一下太难了

后来学到了设计模式,感觉这个东西非常美妙

希望各位大侠就不要跟我说设计模式不重要之类的了

我只想知道,这个场景应该用什么设计模式比较好?

毕竟对我这样的初学者来说,只有用过设计模式,

才能有资格去讨论设计模式好不好之类的吧。

Programming 编程技术
3 个回复
goodtaste
有乐享乐,没乐刨乐 2014-11-30

第一直觉是管道过滤器,哈哈

【 在 freel (freel) 的大作中提到: 】

: 场景:

: 有一个企业系统,用户有职员、老板、经理等,

: 该系统实现的主要功能就是帮助用户实现一些任务

: ...................

goodtaste
有乐享乐,没乐刨乐 2014-11-30

严肃的回答下,你描述的问题勉强可以算架构风格的范畴,还无法细化到设计模式的程度。设计模式是对局部问题的解决方案。从业务上说,这是个典型的工作流系统。其中的老板,员工是工作流中的组件,可以用对象表示。工作流本身,如果考虑到会很多变,可以考虑用解释器。

【 在 goodtaste (有乐享乐,没乐刨乐) 的大作中提到: 】

: 第一直觉是管道过滤器,哈哈

freel
freel 2014-11-30

谢谢

总算有回答具体东西的了

听不大懂,去查下资料先

【 在 goodtaste (有乐享乐,没乐刨乐) 的大作中提到: 】

: 严肃的回答下,你描述的问题勉强可以算架构风格的范畴,还无法细化到设计模式的程度。设计模式是对局部问题的解决方案。从业务上说,这是个典型的工作流系统。其中的老板,员工是工作流中的组件,可以用对象表示。工作流本身,如果考虑到会很多变,可以考虑用解释器。