面向对象设计***设计中的SoC设计比较复杂时任务被分隔开只考虑一个问题,这个问题具有一定的独立性 用面向对象的思想设计软件以数据为中心***设计的本质是用黑箱及其接口描述系统每个部件通过其接口提供一些服务 相对来说,其他部件是这些服务的用户(客户)客户只需了解服务的接口,而实现细节对客户无关紧要服务组件只管提供服务的实现,不管客户如何应用设计中的SoC***自顶向下设计与OOD自顶向下设计函数是黑箱客户只要知道函数接口即能使用之函数实现细节被封装在函数定义中OOD:对象是黑箱对象的能力由类定义类对外提供的接口即方法方法的实现对外部客户是不重要的***OOD设计指南OOD:对给定问题找出并定义一组有用的类的过程确定有用的对象考虑问题描述中的名词(事物)这些事物有什么行为例如:图中Point***OOD设计指南OOD:对给定问题找出并定义一组有用的类的过程确定有用的对象确定实例变量对象信息如:点的x,y坐标***OOD设计指南OOD:对给定问题找出并定义一组有用的类的过程确定有用的对象确定实例变量确定接口考虑问题描述中的动词(对象行为)对对象数据的所有操作要在提供的方法中完成点:显示、移动、读坐标、写坐标等***OOD设计指南OOD:对给定问题找出并定义一组有用的类的过程确定有用的对象确定实例变量确定接口复杂方法的自顶向下逐步求精***OOD设计指南OOD:对给定问题找出并定义一组有用的类的过程确定有用的对象确定实例变量确定接口复杂方法的自顶向下逐步求精反复设计可能会不断增加新类或方法不能期待以线性、系统的方式设计程序***OOD设计指南OOD:对给定问题找出并定义一组有用的类的过程确定有用的对象确定实例变量确定接口复杂方法的自顶向下逐步求精反复设计尝试其他途径会大量经历“尝试-失败”的过程
面向对象设计 来自淘豆网www.taodocs.com转载请标明出处.