导读:结束了软工文档后,就开始了UML的学习,不管学习什么,都要先从整体上去把握,然后再从细节上去分析理解。在视频的开头,就对UML进行了概述。然后接着讲了面向对象技术,用例图,类图和包图等。看着软工分段总结的效果还不错,所以,本阶段的学习,继续分段总结。本篇文章共分为:一、UML概述;二、面向对象技术(软工);三、面向对象技术(UML);四、面向对象技术(HHX);五、区分基于对象、面向过程;六、个人感受。

一、UML概述

在概述中,学习到了UML是什么,以及它的来源历史。UML作为一种程序设计语言,它的初衷也和软件工程一样,是为了提高软件质量,解决软件危机。而,UML的应用,则又是基于9种UML图和4种关系。从概述中,我们可以很清晰的发现,UML的一个重点,则是它的构造。

二、面向对象技术(软工)

在软工的学习中,面向对象技术也作为一个重点辅助技能进行掌握。它主要从OOA(面向对象的分析)和OOD(面向对象的设计)进行讲解说明。在OOA中,又从分析任务、分析方法(OMT)和分析内容(5层)进行说明。在OOA里,要重点把握各层的标识。其后的OOD,则主要介绍了它的设计原则和方法。

三、面向对象技术(UML)

在UML里,为了弥补有些人没有接触面向对象技术,又对面向对象技术进行了说明。它主要从两个方面进行讲解:理论、应用。在UNL里,主要讲解了面向对象中的概念:对象、类、属性、操作、接口、组件、包、子系统等。以及面向对象的基本原则:抽象、封装、继承、多态。这几个原则在软工里的OOD里面也有体现。

四、面向对象技术(HHX)

对比了UML和软工里面关于面向对象的讲解,再看了看信管和数理中关于这一方面知识的描述,形成了我对面向对象技术的理解。我理解的面向对象技术,主要从三个方面:开发方法、开发原则、技术特点。而面向对象技术的相关概念,在UML和软工中介绍的都很详细。对比可以发现,面向对象的原则也好,特点也好,都离不开三个:封装、继承、多态。

五、区分基于对象、面向过程。

5.1 区分基于对象

我记得老师讲VB的时候,说过:严格意义上讲,VB是基于对象......那时候,不是很理解,因为书里说的是面向对象,不明白怎么就成了老师说的基于对象了。现在,我有点理解了。

首先,面向对象的三大特点(封装,继承,多态)缺一不可。而,从敲的小例子中,学生,机房来看,VB实现了封装,而继承和多态这两个,就没有很完美的体现。

其次,我们所谓的基于对象,很大程度上是使用对象。基于对象,无法实现继承,从而更无法实现多态。而使用对象,则可以看做是实现了封装。

最后,区分面向对象和基于对象的方法是:是否实现了继承和多态,是,则面向对象;否,则基于对象。

5.2 区分面向过程

还记得,当时总结VB的时候,懵懵懂懂的就照着别人说的面向对象和面向过程两个方向去总结,而常常挂在嘴边的也是这两个。可是一直以来,都不是很明确的清楚这两个到底是什么样的东西。

面向过程:就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

面向对象:是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

举一个例子,跳绳游戏。面向过程则是:1,人先去摇绳;2,去跳;3,跳绳失败;4,换人摇绳;5,去跳;6,跳绳失败;7,重复步骤;8,结束游戏。而面向对象则是:1,参加人员;2,跳绳方法;3,游戏规则。当行为触发了游戏规则,则会自动判定输赢。

六、个人感受

现在回头去看VB,按照面向对象和面向过程这两个方法来总结是值得肯定的。当时不明白为什么要那样去做,但就是随大流的那样去做了,直到现在,才开始有了一点自己的想法。当自己有了想法之后,就对之前的知识进行纠正和归类,从而也得到了新的提高。

有时候,不必过于纠结每一个细节的东西,先就把它当做是王八的屁股。等到相关知识积累的多了,就一定会在脑子里形成碰撞,从而形成真正属于自己的东西。

请大家多多指教,谢谢!

【UML】概述以及面向对象技术总结的更多相关文章

  1. 【新秀疯狂UML系列】——面向对象的技术

    从软质工作开始,我们来到与面向对象的接触,接下来的学习材料似乎已经提到了面向对象,在与她的朋友去一个.所以,我们必须知道她多一点点. 一.何为面向对象? 面向对象(Object Oriented).是 ...

  2. 2017.12.23 第二章 统一建模语言UML概述

    第二章 统一建模语言UML概述 (1)为什么要建模 模型是某个事物的抽象,其目的是在构建这个事物之前先来理解它,因为模型忽略了那些非本质的细节,这样有利于更好的理解和表示事物: 在软件系统开发之前首先 ...

  3. UML概述(转载)

    UML是一种标准语言,用于指定,可视化,构造和文档的软件系统. UML是OMG在1997年1月提出了创建由对象管理组织(OMG)和UML1.0规范草案. OMG不断努力,使一个真正的行业标准. UML ...

  4. 为什么ABAP开发者需要使用面向对象技术?

    ABAP对面向对象的支持已有十多年的历史,然而在生产实践中,我们对这门技术的应用十分有限. 一方面,面向过程的惯性长期存在着:另一方面,对于大部分二次开发工作而言,似乎并没有足够的理由促使开发者使用面 ...

  5. Windows环境下多线程编程原理与应用读书笔记(2)————面向对象技术

    面向对象技术是学C++需要重点掌握的知识,因为我觉得自己的基础还是比较可以,这一章节的内容就只是粗略的读了一遍,在此就不做过多的笔记.

  6. Java面向对象技术

    问题及答案来源自<Java程序员面试笔试宝典>第四章 Java基础知识 4.2面向对象技术 1.面向对象与面向过程有什么区别? 看下面一个实例即可: 面向过程就是分析出解决问题所需要的步骤 ...

  7. 敏捷软件开发:原则、模式与实践——第13章 写给C#程序员的UML概述

    第13章 写给C#程序员的UML概述 UML包含3类主要的图示.静态图(static diagram)描述了类.对象.数据结构以及它们之间的关系,藉此表现出了软件元素间那些不变的逻辑结构.动态图(dy ...

  8. 使用面向对象技术创建高级 Web 应用程序

    作者: 出处: 使用面向对象技术创建高级 Web 应用程序 来源:开源中国社区 作者:oschina 最近,我面试了一位具有5年Web应用开发经验的软件开发人员.她有4年半的JavaScript编程经 ...

  9. 面向对象技术-原文转载自jingwhale

    面向对象技术 --原文转载自jingwhale,文章底部附原文链接 对象是面向对象的程序设计的核心,它由描述状态的属性(变量)和用来实现对象行为的方法(函数)组成,完成了从数据模型到处理模型的结合与统 ...

随机推荐

  1. PS基础知识学习

    PS学习视频(全) https://ke.qq.com/webcourse/index.html#course_id=28554&term_id=100014572&taid=1349 ...

  2. 《深入理解JavaScript闭包和原型》笔记

    By XFE-堪玉 以下知识来源于对王福朋所写<深入理解javascript原型和闭包>的理解和整理 一切都是对象[引用类型],对象都是通过函数创建的[Funcion类型] 对象是属性的集 ...

  3. Arduino中数据类型转换 int转换为char 亲测好使,itoa()函数

    由于博主最近在做一个项目,需要采集不同传感器的数据,包括float型的HCHO,以及int型的PM2.5数据.但是最终向服务器上传的数据都得转换为char型才能发送,这是借鉴了一个github上面的实 ...

  4. 【数据分析 R语言实战】学习笔记 第八章 方差分析与R实现

    方差分析泛应用于商业.经济.医学.农业等诸多领域的数量分析研究中.例如商业广告宣传方面,广告效果可能会受广告式.地区规模.播放时段.播放频率等多个因素的影响,通过方差分析研究众多因素中,哪些是主要的以 ...

  5. 关于sqlserver帐号被禁用问题

    若发现sqlsrver所有帐号不小心被禁用了,这个时候怎么办?用重装吗?不用,仔细看小白是怎么一步一步解开这个谜题的.首先需要Windows帐号设置里重新添加一个新帐号.并将其添加到管理员组里面,然后 ...

  6. UIButton 左对齐 省略号最右边

    //左对齐 [_btn setContentHorizontalAlignment:UIControlContentHorizontalAlignmentLeft]; //省略号靠右侧 _btn.ti ...

  7. (七)VMware Harbor 问题:Get https://192.168.3.135:8088/v2/: http:server gave HTTP response to HTTPS client

    (一)问题描述 登陆时,报错 docker Get https://192.168.3.135:8088/v2/: http:server gave HTTP response to HTTPS cl ...

  8. poi导出word模板项目实例(一个文件)

    在页面上填写值,然后导出到word模板中,并把页面上的值带到模板中,也就是导出word文档,提前有word 的模板形式, 1.jsp 页面   <table class="formTa ...

  9. iOS利用UIDocumentInteractionController和Quick Look打开或预览文档

    在App的开发过程中,我们避免不了要打开软件中的文件,例如:Excel文件,Word文件,图片文件等不同格式的文件或者想要通过第三方的App来打开这些文件,那么我们就要用到UIDocumentInte ...

  10. jwt 登录

    /* eslint-disable */ 'use strict'; const Controller = require('egg').Controller; const jwt = require ...