By 高焕堂 2013/08/30
9. 设计演练:以EIT造形思考设计
EIT造形提供整体的设计视野,兼顾未来性与特殊性。未来性让架构能够容纳业主(买主)或用户的决策的未来变化;特殊性则满足买主的目前决策,提供贴心的特殊性功能。藉助于6格图来呈现设计师、买主和用户的决策知识,涵盖了3种知识。

首先设计接口来整合<设计师知识>和<买主知识>。如下图:

设计师的知识(写在基类)决定将游戏画面显示于SurfaceView的窗口画面上。买主知识(写在子类)决定如何绘制和呈现棋盘。然后,由基类透过接口而来调用子类的实现代码。如下图:

接下来,设计另一个接口,来将用户知识(写在UI事件处理子类)整合进来。然后,由基类透过接口而来调用UI事件子类的实现代码。如下图:

在进行上述的调用与知识整合之前,还需要有装配动作。就像汽车的例子,先要把轮胎装配上去,引擎才能带动轮胎。因此,需要Factory来进行装配工作。

然后,将前面第1.2节基于类造形的OOAD分析结果,纳入这个EIT造形(如集装箱)里。在时间上,强龙先输出框架代码。

等到买主来了,地头蛇就(基于框架而)输出App代码。

这就支持&实践了强龙/地头蛇分工合作模式了。在落实为代码时,有时会稍微变形。例如,将<I>合并到<E>里:

合并的结果如下图:

此时,基类与子类之间变成为<extend>关系了。上图相当于下图:

此外,我们常常将UI事件处理子类与Factory类合并为一,如下图:

合并的结果如下图:

最后,将<T>视为插件,再延伸到配件,也将配件整合进来。

这就是目前的Android和iOS框架与App的常见整合架构了。 [歡迎光臨 高煥堂 網頁: http://www.cnblogs.com/myEIT/ ]
10. 结语
EIT造形是软件产业30年来,有机会提升系统设计的基本模块,从类造形扩大为EIT造形。分析或设计师以EIT造形来思考设计;而开发者将设计迅速落实为代码。EIT造形的<I>可成为团队分工的界线,强龙将<E&I>部份落实为框架代码和API接口;而地头蛇将<T>部份落实为App代码。无论是设计师、开发者或API定义者,EIT造形都是他们心中共同的感觉、一致的心灵;因而成为系统设计与实践的基本模块。◆