近来细看协作图,看“专家模式”,顿然感到:
OOA,就像撒豆成兵,调兵遣将;做的不过是个“组织架构”、“行政设计”的工作而已。
可不,首先,是识别出类。这好比是为组织架构识别出各种岗位角色。
然后,为每个类,通过协作图,识别出功能。这好比是为每个岗位分派职责。并确定岗位之间沟通、协作的关系。
接着,把类分到不同的package,并对package分层组织。这不就是把岗位分到不同部门,并确立部门关系。形成组织架构图。
最后,就是资源到位,把人、财、物分派下去,运作起来。这就是把系统run起来,把为类创建对象,相互之间作用。
所以,设计软件,如创建企业。设计过程,就是分析、模拟实际场景,把类一个个识别;把职责功能一个个分派下去;把消息沟通机制建立起来。水平高低,就体现在类的职责分派;效率和质量,也最终因类的功能和交互关系决定。