第七章
餐馆系统:实现
7.1 Implementation diagrams
组件图:显示组件及其关系
部署图:现在在物理机器上这些组件如何部署
Components
类和组件的实现是用依赖关系,组件表示方法就是边界上有矩形存在,见图7.1
Component diagrams
组件表基本是编译依赖关系,图7.2显示了餐馆预定的组件图
Deployment diagrams
部署图:
图7.3,显示过程节点和组件在部署图中的表示方法
7.2 Implementation strategies
自顶往下,便于测试整体的设计,缺点是底层的类需要写存根
自底往上,便于测试每个组建,确定是直到最后才发现整体设计是否满足功能。
一个折中的办法就是迭代,实现用例图,也就是实现类
7.3 Application frameworks
见图7.4,不用为底层和用户打交道而费心,而且这些代码是可重复利用的
Hotspots
见图7.5,一个热点类,见图7.6重写框架里面的操作,见图7.7重写返回方法。
Inversion of control
倒置的控制
以前写程序是程序员写一个main函数,然后控制整个程序的流程,现在是由用户控制,程序员只管对用户的动作做出正确的反应,有时候这个也被称作事件驱动。
7.4 The JAVA AWT FRAMEWORK
documenting a framework with UML
用UML证明框架
UML用来描述其结构