background image

      首先,我想先明确一下 UI 和 P Logic 的概念。

      

表示层可以拆分为两个部分:User Interface(简称 UI)和 Presentation Logic

(简称 P Logic)。

      

UI

——

是系统与用户交互的界面性概念,它的职责有两个

接受用户的输入和向用户

展示输出。

UI 应该是一个纯静态的概念,本身不应包含任何逻辑,而单纯是一个接受输

入和展示输出的 外壳 。例如,一个不包含逻辑的 Windows Form,一张不包含逻辑的

页面,一个不包含逻辑的 Flex 界面,都属于 UI。

      

P Logic 是表示层应有的逻辑性内容。

例如,某个文本内容不能为空,当某个事件发

生时获取界面上哪些内容,这都属于 P Logic。应该指出,

P Logic 应该是抽象于具体 UI

的,它的本质是逻辑,可以复用到任何与此逻辑相符的 UI。

      UI 与 P Logic 之间的联系是事件,UI 可以根据用户的动作触发各种事件,P Logic

响应事件并执行相应的逻辑。P Logic 对 UI 存在约束作用,P Logic 规定一套 UI 契约,UI

要根据契约实现,才能被相应的 P Logic 调用。

      下图展示了 UI 与 P Logic 的结构及交互原理。