面向过程:以关系的形式来看待世界,牵一发则动全身,事物间互相有因果关系,分析问题的时候是从过程的起点,顺藤摸瓜,分析每个部分,然后走到过程的终点。随着事物的复杂性和不断地变化,要分析所有的因果关系及所有的因素变得非常困难,这个时候就引入了面向对象。从头到尾分析

面向对象:将世界分成了不同的小对象,他们之间看上去是没有关系的,只有在外力的因素下,互相交互形成了生动的世界。

微观上——可爱的论述:对象-人

人有外表,看不到内部,那么这个外皮就是——封装

两个人合起来就成了一个组合,这个组合就是新的对象,这个新对象是拥有两个人的特性的综合——聚合

夫妻可以孕育子女,这个子女拥有了我们所有的能力——继承

人可以买很多衣服,不同的场合可以穿不同的衣服,但是本质上只有一个——接口

多个人可能会有同一件衣服,但是同一件衣服被不同的人穿上身后就有了不同的表现——多态

宏观上——可爱的论述:对象-人

我们人不知道自己的行为对世界造成的改变是什么样的。

我们只知道我们的周围有很多的朋友——依赖

我们与朋友之间保持着联系——耦合

我们都需要自己的独立空间——类属性

我们在沟通的时候都是打开一个小窗户——方法

物以类聚人以群分,我们因为有共同爱好“吃”组成一个吃团,这个寻找共同爱好组成吃团的过程——抽象

吃团——类

我们除了都爱吃外,还有自己的独特的个人,比如有人爱运动,有人爱看书,当我们将爱看书这个特性给了一个人,并且让他去看书,这个过程就是——实例化

在分析对象的时候,我们仅关心与它有关系的几个对象。

对象组装——制动鼓

组成制动鼓的零件,例如螺丝和螺帽,他们不仅仅可以用在制动鼓上,也可以用在其他对方——复用

组成汽车的标准零件不是唯一的,可以被替换掉,这和最终的产品独立

用零件组成刹车,组成发动机,组成底盘,或者组成小车——由小到大-自底向上的抽象过程

汽车由发动机、车架、底盘的大部件组成——由大到小-自顶向下的抽象过程

抽象层次的好处:1、只关心的是该层次上对象是如何工作的;2、底层的改变不影响高层的功能

UML:面向对象分析设计方法中建立现实世界与对象世界的桥梁。

《大象Thinking in UML》学习笔记(一)相关推荐

  1. 【web编程技术学习笔记】因特网与万维网简介

    目录 Client客户端 Server服务器端 TCP/IP五层协议 IP 查看IP地址的的两种方法 TCP URL 样式一 样式二 DNS URL&DNS HTTP 与因特网有关的组织 IE ...

  2. 程序员编程技术学习笔记

    程序员编程技术学习笔记     看july的博客也有好久了,一直没能好好整理一下自己的学习笔记,开了博客之后更加愿意好好整理一番了.其中不免有些内容在july那里可以找到原文,但是更多的加入了我个人的 ...

  3. JAVA 网络编程技术学习笔记

    目录 一.网络编程基本概念(了解) 1.1 计算机网络 1.2 网络通信协议 1.2.1什么是网络通信协议 1.2.2 OSI七层协议模型 1.2.3网络协议的分层 1.3数据的封装和解封 1.4 I ...

  4. 《ASP.NET MVC4 WEB编程》学习笔记------Web API 续

    目录 ASP.NET WEB API的出现缘由 ASP.NET WEB API的强大功能 ASP.NET WEB API的出现缘由 随着UI AJAX 请求适量的增加,ASP.NET MVC基于Jso ...

  5. java网络编程技术学习笔记(b站【狂神说Java】网络编程实战讲解)

    b站视频链接:[狂神说Java]网络编程实战讲解 文章目录 网络编程 1.1.概述 1.2.网络通信的要素 1.3.IP 1.4.端口 1.5.通信协议 1.6.TCP 文件发送 1.7.UDP 1. ...

  6. SpringBoot整合第三方技术学习笔记(自用)

    SpringBoot整合第三方技术学习笔记 搬运黑马视频配套笔记 KF-4.数据层解决方案 KF-4-1.SQL 回忆一下之前做SSMP整合的时候数据层解决方案涉及到了哪些技术?MySQL数据库与My ...

  7. java mvc框架代码_JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码)

    原标题:JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码) JavaEE体系结构包括四层,从上到下分别是应用层.Web层.业务层.持久层.Struts和SpringMVC是Web层的 ...

  8. ssm 转发请求_千呼万唤!阿里内部终于把这份SSM框架技术学习笔记分享出来了...

    SSM SSM(Spring+SpringMVC+MyBatis)框架集由Spring.MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容).常作为数据源较简单的web项 ...

  9. 【C#编程基础学习笔记】6---变量的命名

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...

  10. 【C#编程基础学习笔记】4---Convert类型转换

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...

最新文章

  1. 百度地图infowindow
  2. 计算机联锁仿真软件设计,一种基于LabVIEW的计算机联锁仿真系统的制作方法
  3. TEE_ObjectHandle在Crypto中的使用
  4. 【.NET深呼吸】基础:自定义类型转换
  5. Codeforces Round #724 (Div. 2) 题解
  6. vb 打印机 任意尺寸_创新小黑管“省心省力”惠普Laser NS 1020 智能闪充激光打印机...
  7. Web开发小结 - 2
  8. 一起走过一段不平凡的路
  9. 奥斯卡公布最佳动画长片初选名单 《哪吒》等32部动画入选
  10. Kudu : kudu运行的时候-停止master RecoverableException: Failed to connect to peer master
  11. 里计算两个数的总和_发动机排量怎样计算?懂这个的修理工真嘀很少!
  12. 广西国际商务职业技术学院官网计算机功课,2019—2020学年秋季学期线上线下混合式教学课程听课情况汇报...
  13. scala集合基本介绍
  14. HDU1799 循环多少次?【打表】
  15. poj Labeling Balls 3687 拓扑排序!!!!
  16. 请慎用ASP.Net的validateRequest=false属性
  17. 根据ReentrantLock -- 解析AQS原理
  18. n阶乘计算器 超大数 理论可计算8位数以内的阶乘数
  19. 《ybtoj高效进阶》第五部分第六章例题3 耗费体力
  20. 基于单片机的银行排队叫号系统(Keil工程文件+Proteus仿真原理图+过程详解+全套文档)

热门文章

  1. MyBatis_Plus联表分页查询
  2. 开一家300平方米的亲子乐园需要多少钱?看完你就懂了!
  3. jsonobject中getkey_Java JsonObject.get方法代码示例
  4. Kubernetes——面试问题全集
  5. 文件下载 Content-Disposition中filename中文乱码解决
  6. vul.php,phpvulhunter 精短简小的PHP代码安全审计,可 SQL注入漏洞、跨站脚本等 Exploit 弱点检测 267万源代码下载- www.pudn.com...
  7. Python加密解密程序
  8. 全志Tina系统调频调压
  9. 四、项目生命周期和开发生命周期
  10. php实战开发管理系统,深入浅出PHP框架Thinkphp实战开发(权限管理、CMS内容管理系统)...