一、面向对象分析(OOD)的定义

Object Oriented Design
是一种软件设计方法,是一种工程化规范。
软件系统的逻辑模型。它界定了系统完成其功能的逻辑

二、OOD的其他

设计面向对象的软件是困难的,设计可复用的面向对象的软件更加困难。

(1)你必须找到适当的对象、以适当的粒度将它们转化为类的因子、定义类接口和继承层次以及建立它们之间的关键关系。

(2)你的设计应该针对于手边的问题,但也应足够通用化以适应将来的问题和需求。

(3)你也应避免重复设计,至少应使重设计减少到最小程度。有经验的面向对象设计者将告诉你虽然不是不可能在第一次就达到

目标,但可复用的灵活的设计是困难的。在设计完成前,他们通常尝试复用几次,并每次做一些修改。软件系统的逻辑模型。

它界定了系统完成其功能的逻辑。

1 传统方法和OO 方法
2 设计问题
Meyer[MEY90]建议了可为模块化体系结构导出的 5 种基本
设计原则:(1)语义模块单元;(2)很少的接口;(3)小的接口(弱耦合);(4)显式的接口;以及(5)信息隐蔽。

三、系统设计过程

1 划分分析模型
1 并发性和子系统分配
2 任务管理构件 
3 数据管理构件 
4 人机界面构件 
5 资源管理构件
6 子系统间通信

四、对象设计过程

1 对象描述
2 设计算法和数据结构 
3 程序构件和接口
5 设计模式 
OOAD 的目标是设法生成一个高质量的软件‘蓝图’

OO学习之二——面向对象分析(OOD)的介绍相关推荐

  1. 片上总线Wishbone 学习(二)Wishbone总线标准介绍

    片上总线Wishbone 学习(二)Wishbone总线标准介绍 Wishbone总线产生.发展 市场是推动技术前进的主要动力,人们对各种电子产品不断的更新,更好,更完美的追求刺激了技术的不断升级和创 ...

  2. iOS 开发之 OOA (面向对象分析) OOD (面向对象设计) OOP (面向对象编程)

    OOA OOA 基本概念 OOA 全称 Object-Oriented Analysis 面向对象分析 指的是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA 与结构 ...

  3. UML和模式应用学习笔记-1(面向对象分析和设计)

    大学时曾经开过<UML和模式应用>的课程,当时没有引起足够的重视,只为了应付考试并没有真正掌握书中的内容:现在工作中经常要用到UML及设计模式,决定每周花点时间重新对书中的内容进行学习:本 ...

  4. EasyUI学习总结(二)——easyloader分析与使用

    使用脚本库总要加载一大堆的样式表和脚本文件,在easyui 中,除了可以使用通常的方式加载之外,还提供了使用 easyloader 加载的方式.这个组件主要是为了按需加载组件而诞生.什么情况下使用它呢 ...

  5. 《算法学习》二 冒泡排序分析

    前言 社长,一个爱学习,爱分享的程序猿,始终相信,付出总会有回报的.知识改变命运,学习成就未来.爱拼才会赢! 程序猿学社的GitHub,已整理成相关技术专刊,欢迎Star:. https://gith ...

  6. JUC学习(二):Lock的介绍及使用(实现多线程卖票)

    一.Lock简介 Lock 锁实现提供了比使用同步方法和语句可以获得的更广泛的锁操作.它们允许更灵活的结构,可能具有非常不同的属性,并且可能支持多个关联的条件对象.Lock 提供了比 synchron ...

  7. Python学习札记(二十) 函数式编程1 介绍 高阶函数介绍

    参考: 函数式编程 高阶函数 Note A.函数式编程(Functional Programming)介绍 1.函数是Python内建支持的一种封装,我们通过一层一层的函数调用把复杂任务分解成简单的任 ...

  8. GitHub mall项目学习(二) mall-admin

    GitHub mall项目学习(二) mall-admin 本文主要介绍mall-admin后台系统 mall ├── mall-common -- 工具类及通用代码 ├── mall-mbg -- ...

  9. 面向对象简称 OO(Object Oriented),20 世纪 80 年代以后,有了面向对象分析(OOA)、 面向对象设计(OOD)

    面向对象简称 OO(Object Oriented),20 世纪 80 年代以后,有了面向对象分析(OOA). 面向对象设计(OOD).面向对象程序设计(OOP)等新的系统开发方式模型的研究. 对象的 ...

最新文章

  1. mysql数据库比对视频教程_MySQL数据库全学习实战视频教程(27讲 )
  2. 子段乘积(逆元费马小定理)+线段树做法
  3. 11.1.5 练习题
  4. java dwr实现消息推送_dwr消息推送
  5. SPOJ_SUBLEX
  6. 医疗大数据处理流程_我们需要数据来大规模改善医疗流程
  7. 实验吧Web-易-天网管理系统(php弱类型,==号)
  8. 【转】Windows版本,OS内核版本,Windows SDK之间的关系
  9. vs2005 pro 在浏览器查看下的一个问题!
  10. 输出毫秒_使用AMETEK直流电源实现波形变化的输出
  11. Mono项目的新进展
  12. LSTM 之父发文:2010-2020,我眼中的深度学习十年简史
  13. 14.深入分布式缓存:从原理到实践 --- 典型电商应用与缓存
  14. Java生成32位全局唯一id
  15. mybatis中使用大于,小于号
  16. 基于PHP的学生量化管理系统
  17. Conventional Commits那些事
  18. VC+API模拟键盘按键(详解篇)
  19. [CTF] 攻防世界MISC高手区部分题目WriteUp(2)
  20. HTML+JS实现省市区三级联动亲测可用

热门文章

  1. 【 FPGA 】UltraFast设计方法学笔记(RTL代码风格2)
  2. 用css动画写一个下红包雨的效果
  3. Linux 入门基础
  4. bzoj4830 hnoi2017 抛硬币
  5. APAR:MON_OBJ_METRICS=EXTENDED导致IUD性能问题(转载自Db2技术分享)
  6. LAMP 架构深度优化记录
  7. Django学习笔记 开发环境搭建
  8. Android 使用Toolbar+DrawerLayout快速实现仿“知乎APP”侧滑导航效果
  9. Apk文件破解反编译(转)
  10. 开发人员常用SVN命令