OOAD  面向对象的分析与设计 
 
        OOA-----分析阶段(针对业务问题清晰视图, 列出系统完成任务,  整理业务的公共词汇,  列出解决业务的解决方法)
        OOD-----解决业务的具体实现(技术选型,架构搭建,第三方组件调用)
 
             OO 面向对象  一种系统建模技术
 
                    对象 客观存在 唯一的实体        是面向对象编程过程中分析与解决问题的出发点与基础
                    对象具有        属性 (特征)      方法(行为)
                    
 
                    类是对象的模板        对象通过类实例化产生 就是 一般是new出来
                    一个类可创建多个对象
                    
 
                OO的方法三部分组成  过程 标识 规则
                    
                OOP 面向对象编程  按照OO的方法学来开发程序的过程
                      OOP主要特征
                            抽象  -------忽略细节关注本质特征
                            封装  -------隐藏数据和实现 提供公共方法供调用功能
                            继承  -------通过存在的类型 定义新类型的机制 "is a"    例 苹果 "is a" 水果    实现代码重用,是多态的基础
                            多态  -------一个名称 多 基于继种形式承
                                     -------不同对象调用方法给出不同的处理方式
                                     -------play(Football);---- 用脚完成
                                     -------play(Basketball);----用手完成
                            关联  -------对象之间的引用     例 person  使用computer  就是 关联关系
                            聚合  -------一个对象是另一个对象的组成部分  "has a"    汽车 "has a" 轮胎   轮胎是汽车的组成部分
                            组合  -------关联关系最为强烈  一个对象包含另一个对象  外部对象管理内部对象的生命周期   例 电视机与显示器
                            内聚和耦合  内聚  --度量 一个类独立完成功能的能力
                                               耦合-- 度量 系统内部依赖的复杂度
                            设计原则   高内聚 低耦合  (增加内聚  减少耦合)
 
                            域模型  称为设计模型
                                    组成:  域对象    具有状态和行为
                                              域对象的关系
                                                    关联    用户 和订单
                                                    依赖    一个类使用时必须用另一个类
                                                    聚集    整体和部分的关系   人 和 手
                                                    一般化(泛化)    继承关系
                            
                   开发过程        传统 瀑布模型  需求 ---分析--- 设计--- 实现---  测试
                                         统一开发软件过程(USDP)  项目是迭代的,递增的(迭代开发)

OOAD 面向对象的分析与设计的更多相关文章

  1. [python 译] 基于面向对象的分析和设计

    [python 译] 基于面向对象的分析和设计 // */ // ]]>   [python 译] 基于面向对象的分析和设计 Table of Contents 1 原文地址 2 引言 2.1 ...

  2. UML和模式应用1: 面向对象的分析与设计

    1.基本术语说明 items note OOA/D  面向对象的分析与设计 UML 描述.构造和文档化系统制品的可视化语言 模式 问题解决方案的公式 2. 本书的主要内容 本书的主旨是对应用了UML和 ...

  3. UML分析与设计

    考点: 掌握面向对象的分析与设计 掌握UML描述方法 用例图.类图.序列图.状态转换图 类图:类的属性.方法的识别:类间的各种关系 类图:实体.联系 各种关系图例: 泛化:取公共属性 关联分为聚合.组 ...

  4. Java 程序员应在2019年学习的10条面向对象(OOP)设计原则

    面向对象的设计原则 是 OOP 编程的核心,但是我看到大多数 Java 程序员都在追求诸如 Singleton 模式,Decorator 模式或 O​​bserver 模式之类的设计模式,而对学习面向 ...

  5. .NET应用架构设计—面向对象分析与设计四色原型模式(彩色建模、领域无关模型)(概念版)

    阅读目录: 1.背景介绍 2.问自己,UML对你来说有意义吗?它帮助过你对系统进行分析.建模吗? 3.一直以来其实我们被一个缝隙隔开了,使我们对OOAD遥不可及 4.四色原型模式填补这个历史缝隙,让我 ...

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

    UML和模式应用学习笔记-1(面向对象分析和设计) 而只是对情节的记录:此处的用例场景为:游戏者请求掷骰子.系统展示结果:如果骰子的总点数是7,则游戏者赢得游戏,否则为输 (2)定义领域模型:在领域模 ...

  7. 《UML和模式应用》读书笔记(一)面向对象分析和设计简单示例

    在开始进行对象分析和设计之前,先通过“扔骰子”这个软件(游戏者扔两个骰子,如果总是是7,则赢,否则输),来简单分析下这个过程. 1:用例 需求分析,可能包括人们如何应用的场景或情节,这些都可以被编写成 ...

  8. 解析UML的面向对象分析与设计

    经常听到有朋友抱怨,说学了UML不知该怎么用,或者画了UML却觉得没什么作用.其实,就UML本身来说,它只是一种交流工具,它作为一种标准化交流符号,在OOA&D过程中开发人员间甚至开发人员与客 ...

  9. 面向对象分析与设计—OOD部分

    第三部分 面向对象设计 3.1 面向对象设计(OOD)的定义? 在面向对象分析阶段,已经针对用户需求建立起用面向对象概念描述的系统分析模型.在设计阶段,要考虑为实现系统而采用的计算机设备.操作系统.网 ...

随机推荐

  1. 最简单易懂的linux系统基础优化

    第10章 linux的系统优化 10.1 系统的版本,内核查看 10.1.1 系统版本的查看 [root@oldboy6666 ~]# cat /etc/redhat-release CentOS L ...

  2. Docker--Docker初体验

    echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 先来接 ...

  3. jvm调优、常用工具

    ps -ef | grep java查出进程id jmap -heap ID 查出jvm配置信息 加入参数:打印Gc日志,分析 GC日志分析工具: GCeasy 降低minor gc 和 full g ...

  4. 2019年Dubbo你掌握的如何?快看看这30道高频面试题!

    前言 Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案.简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式 ...

  5. poj 1321 棋盘问题 (回溯法)

    棋盘问题 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 69951   Accepted: 33143 Descriptio ...

  6. CodeForces - 556C Case of Matryoshkas (水题)

    Andrewid the Android is a galaxy-famous detective. He is now investigating the case of vandalism at ...

  7. Docker入门-笔记-1

    Docker入门 Docker 是 Golang 编写的, 自 2013 年推出以来,受到越来越多的开发者的关注.如果你关注最新的技术发展,那么你一定听说过 Docker.不管是云服务还是微服务(Mi ...

  8. mysql-5.7.21-winx64安装教程

    1 . 下载对用的版本信息 地址是:https://dev.mysql.com/downloads/mysql/ 2 . 解压到目录 D:\tools\mysql\mysql-5.7.21-winx6 ...

  9. 面试连环炮系列(二):你们的项目Redis做了集群部署吗

    你们的项目Redis做了集群部署吗? 我们有大量数据需要缓存,而单实例的容量毕竟是有限的,于是做了Redis集群部署. 采取的方案是什么,Codis还是Redis Cluster,为什么要选择这个方案 ...

  10. 你竟然没用 Nuget 构建项目?

    想写这篇文章缘起于公众号文章里的一条留言: 对于一个现代化的开发平台,建立一种让开发者创建,分享与使用可复用代码的机制是十分必要的.这种"可复用代码"被打包后的文件通常被称作&qu ...