woaidongmao

文章均收录自他人博客,但不喜标题前加-[转贴],因其丑陋,见谅!~
随笔 - 1469, 文章 - 0, 评论 - 661, 引用 - 0
数据加载中……

对于界面,要封闭,要开放什么

1、对于界面之流,他要Get什么和如何Display我不管,可以给它对象和接口,他可以自己组合成自己的显示,显示永远都不是业务逻辑的部分;

2、对于界面之流,他要Change什么我要管,不能让他调用能够改变模型的接口,因为改变肯定是业务逻辑的部分,界面中直接调用方法来改变,意味着业务逻辑存在耦合到界面中的部分,这是不允许的。

3、总结,任何Change都必须通过UserCommand,让UserCommand这个抽象层来完成这个事情,一个参与者会有一系列的命令接口。

==============================================================================

备注:后来的一点领悟,任何改变和执行都是业务逻辑的部分。如果能够确保界面只能够调用Get?,可以通过const来解决。

a、界面得到一个const object* 或者const object&;

b、const对象或者指针,只能调用const方法,const 方法意味着no change

posted on 2008-09-12 15:33 肥仔 阅读(310) 评论(0)  编辑 收藏 引用 所属分类: 编程思想


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理