定义模型通常是架构师的工作,那么如何定义复杂的模型呢?

1. 定义模型就是在定义面向对中的类

    在这里可以把模型和类等同起来,比如现在要定义一个桌子的模型,那么就是在定义桌子有哪些属性、子事物和行为等,这就是在定义面向对象中的类。

2. 作为类的模型的结构

    作为类的事物模型主要定义以下三个内容:

  • 属性
    一个事物有哪些属性,比如桌子的名字、颜色、长、宽和高等等属性。
     
  • 子事物
    一个事物有哪些子事物,比如桌子包含桌面和桌腿等子事物,而桌面又有可能包含木头、漆面等子事物,总之子事物可以在逻辑上细分下去。
     
  • 行为
    一个事物有哪些行为,一个桌子可能没有什么行为,不过如果它有什么行为的话那么在这里定义。

    一个典型的作为类的事物模型可以参看下图,这是一个XWorker常用的WEB框架。

3. 如何定义复杂的模型

    在XWorker中可以定义非常复杂的模型,但是要牢记一点,任何复杂的模型都是简单模型的组合,在XWorker中可以使用事物的继承关系组合复杂的模型。

    还是以上面的WEB框架为例,在这个WEB模型里可以编写界面,在界面里可以使用HTML、ExtJs、JQuery和其他控件等,但是在WEB框架里没有直接定义它们,而是通过继承来实现的。

    上图中的xworker.html.base.view又继承了Widgets。

    xworker.html.Widgets又继承了其他控件,这样可以一直继承下去,直到把所有的单独的控件都组合在一起。

    当通过继承把简单的模型组合在一起时,那么在最终的具体模型里就可以使用了,如下图。

Copyright ©  2007-2019 XWorker.org  版权所有  沪ICP备08000575号