如何用设计模式替代if else

confuse 08-03-17
    

在项目中常遇到这种情况,一个页面(e.g.:用户信息)经常需要在不同的功能模块下面显示,但是在不同的功能下面可能页面显示的内容略有不同(有些控件仅在特定功能下才显示),同时登陆时发送的参数自然也有些不同。过程化的思想使得在一个页面代码里面写满了if else,感觉这样很不好,特来请教高人给出一个比较好的设计方案,谢谢。

    

banq
2008-03-17 21:29

典型的Command模式。

只有深刻全面掌握模式后,才会自己解决if else的问题。

confuse
2008-03-18 09:29

哦,谢谢。页面上主要行为的不同在于画这个页面,如果用Command模式封装的话,是要构建子类,重写画页面的函数,这样得以展现在不同功能下的不同页面吗?这样我感觉是不是可以用builder模式呢?谢谢再指点指点呵呵。

xyz
2008-03-18 11:37

不要为了用模式而用模式!!!!

fety07
2008-03-18 12:55

鼓励用设计模式, 不用怎能体会倒"不要为了用模式而用模式".

3Go 1 2 3 下一页