软工之面向对象

我们要向了解面向对象的技术,首先就要了解什么是对象,对象并不是我们说的你的他/她。我们来举一个例子,苹果看做是一个对象,它自身有一组属性和一组操作,比如外形、颜色,可以被吃,会熟等。对象知道后,就来了解什么是面向对象技术主要讲什么呢?

开发过程:虽然这是一种新的方法,但与传统的软件开发还是有很多相同之处,下面是我的一个对比图,这是本人自己的理解,如果有不同见解,可以提出来哟!

类的开发分为四步,一旦标识了一个类,就需要对类定义,接下来解释如何去实现,当然我们会想这个类是否可行呢?就需要去测试一下,看看是否符合我们的需求,最后在软件运行中对类要做到求精和维护。

我们经过分析阶段会收集很多信息,这些信息如何高效处理,我们就利用对象模型化技术(OTM)来处理信息,它将信息构造在三类模型中:

对象模型是最关键的一个,包括类和对象;动态模型侧重于系统的控制逻辑,描述我们系统怎样运行;功能模型表示我们这个系统能够做什么,由多个数据流图组成。看来这个数据流图不会画真的不行,哪都能用到。

面向对象两个主要方面:OOA和OOD

面向对象分析OOA:构造一个概念模型,我们需要对概念模型进行构造和评审,主要分为五个层次:类与对象、属性、服务、结构和主题,我认为是一种层层递进,逐步深入审查的过程。

面向对象设计OOD:设计时继续采用这五个层次,根据这五个层次建立系统的组成成分。分为四部分:问题论域、人机交互、任务管理、数据管理。问题论域部分让我想到了论域分析,论域分析发现了问题,设计时解决这些问题。

综上所述:面向对象技术与传统的开发方法有相同也有些差异,但只要我们找到他们的相同和不同之处,再结合生活理解起来就没有那么难了。

时间: 2024-10-10 18:03:52

软工之面向对象的相关文章

软工视频(27~32)-面向对象技术

这次主要说面向对象技术,面向对象,在之前就已经接触过,那么这里我来比对着学习一下. 大道至简,其实面向对象讲来讲去就这两样东西,一是它是什么,二就是它是怎么来的. 一.先说它是什么吧,也就是他的概念.这里我想先回忆一下之前学到的这些东西.首先是VB,它主要是面向过程,面向对象的东西并不多.C++呢,面向对象这一块还是非常重要的,不管是学习还是考试,这都是一个重点.基本上一提到面向对象,那就是对象.类.继承.多态.封装.再来看看我们软工中说到的面向对象: 面向对象=对象+类+继承+通信. 在说这个

软工第0次个人作业

一.你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢? 首先说明,在进入大学之前,对于计算机专业的相关问题一无所知,对编程一无所知,对于计算机的理解仅仅存在于玩游戏和瞎捣鼓的层面上,唯一感兴趣或者自己能够想到的问题就是计算机的硬件是如何处理我们的操作指令的,软件又是通过怎样的方式写成的. 抱着这样的观点,以及相比于其他的工科专业,计算机专业给我有一种高大上的感觉,充满科技气息,再加上口耳相传的计算机专业人员在未来一定会发挥重大作用,报酬丰厚等等原因,最终选择了计算机专业,这也是我的第一

软工总结

大一的时候,我们接触了很多的基础,同时,我们也写了很多的代码,从简单的输入输出再到一些基础排序.查找算法.大二的时候,我们系统的学习了很多进阶的内容,写了更多的代码,从面向对象的类再到复杂的红黑书平衡树.终于到了大三,两年的准程序员生活让我们写了很多代码,同时也做了好几个或大或小的项目.虽然只是学了简单的知识,但是我们依然或好或坏的完成了这些项目——完全凭借自己的本能.不论是什么计算机语言,算法,还是硬件接口,只要遵循规则就能得到结果.然而,软件工程却推翻了这一切,老师告诉我们,不能再先写再重构

软工初体验

软件工程是设计思想,主要是运用现代科学技术知识来开发工程的相关文件资料.从软工开始就开始进入C/S的学习,这也就代表这我们的计算机学习进入正规化的阶段,软工视频看完很长时间了,一直没有总结起来,颗粒归仓是一件很重要的事,在接下来的学习中,一定注意总结! 软件工程的概论    软件有自己的生存周期,从开始使用到最后有新的软件代替这段时间是他的生存周期,而软件开发的生存周期:分析,设计,实现,调试,支持.与生存周期相对应的还有他在开发的过程中要注意的六个步骤:制定计划,需求分析,软件设计,编写程序,

软工第零次作业[补交]

目录 第一部分:结缘计算机    2 i.    你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?(必答)    2 ii.    计算机是你喜欢的领域吗?是你擅长的领域吗?    3 iii.    你热爱这一专业吗?你对计算机的热爱是怎样的?仅仅是口头的吗?    3 第二部分:在计算机系里学习    4 i.    你对你的大学生活有什么想要吐槽的地方吗?你理想的大学教育应该是什么样子的?跟学校给你的有什么区别?比较你在中国大学的经历,你的老师和学校能做到和国外那样吗?如果不能

【软工视频】维护

对于一个系统或软件来说,最难得部分不是软件开发阶段,而是维护阶段.下面一张图,让我们认识到维护的重要性! 由上图可知,维护在软件生存期所占的比例在70%以上..  困难 1.理解别人写的程序困难,困难程度软件配置成分减少而迅速增加(之前的博客<[软工视频]测试>中已写过软件配置) 2.要维护的软件往往没有合适的文档或资料不全 3.绝大多数软件设计时没有考虑将来的修改 4.维护不是一项吸引人的工作 5.软件人员经常流动,维护不能依靠原开发人员 6.追踪软件的建立过程非常困难,或根本做不到 流程

【软工视频】软件开发方法与模型

这篇博客将软件开发方法与模型一起写,是想给它们进行比较,分析它们的不同.. 开发方法 通过看自己的软工视频和查阅百度百科,发现软件的开发方法有很多种,下面是我在百度百科上的截图: 就目前而言,我需要学习的是结构化开发方法(SASD).面向数据结构开发方法和面向对象的开发方法.由于面向数据结构和面向对象的开发方法没有进行系统的学习,所以我现在要写结构化开发方法.结构化开发方法也会贯穿[软件视频]这一系列博客,希望大家给我指正! SASD是面向数据流的开发方法,下面一张图是我对它的总结: 感觉自己的

(软工视频总结一)让我们把知识连起来

我们学习的知识都是有关系的,我们不能把一些的新的东西都要放进自己的脑子里,而是将自己知道的知识拿出来,和书上的对应-- 我们大多数都参加了<信息系统开发与管理>这一门自考,其实想想,软件工程和信管真的很像,所以说软工对于我们来说并不是一项新的内容,而是我们熟悉的. 软工视频首先就纠正了我们一个误区:软件不单纯是一个程序,而是程序.数据和相关文档的完整集合.由于多数开发人员只重视开发,不重视维护,所以导致软件在开发和维护过程中遇到了一系列严重问题,称此为软件危机,表现为产品不符合用户的实际需要.

[BUAA软工]个人总结

软工总结 一.课程初阅读提问博客 link Q1.1: 敏捷开发对于产品的可靠行要求不高? 这里的可靠性应当是相对而言,对于安防国防领域的软件,由于自身特性,在软件设计时首先考虑可靠性.相对来说,敏捷开发对于产品的可靠性要求要低一点点,容忍度好一点. Q1.2: 这本书适合作为教材吗? 我个人还是觉得,这本书和教材的定位并不同,让我选,是不会用这本书作为教材的.如果从开始筹划一本教材,那么它一定是完全针对于某一门具体的课,融合进多年的教学经验,凸显学习过程中的重点难点的,旨在为同学们构建一个完善