mrfangzheng

Hope and fear are useless. Be confident, and always be prepared for the worst.
  首页  :: 新随笔  :: 联系 :: 管理

Design : 如何设计View

Posted on 2010-05-18 14:06  mrfangzheng  阅读(190)  评论(0编辑  收藏  举报

View

1.       View是一个状态机

a.       显示Model的状态

b.       即使是动画也是一个动画状态

2.       先定义View的若干状态

a.       初始状态

3.       View的职责

a.       表现Model的数据和状态 (Updaters/Painters)

b.       接受User的事件和输入并传递给模型 (Command)

c.       监听Model的事件并刷新显示 (Event Handlers)

4.       View的输入和输出

a.       输入

                                                               i.      用户

                                                             ii.      时钟

                                                            iii.      模型事件

b.       输出

                                                               i.      显示设备

                                                             ii.      模型

5.       View的性能优化

a.       缓存和重用图形平台资源

b.       只绘制可见范围内的部分

c.       监听Model的变化, 只更新变化的部分

d.       根据不同的zoom来决定绘制细节程度和质量

 

Model分类

1.       ViewHelperModel 保存view的临时状态

2.       BusinessModel 业务逻辑, View无关