面向对象的软件project——面向对象分析
为了解决软件危机。一些IT前辈国产软件project这个词汇,软件project它被引入到整个软件开发过程的维护。
软件project从程序的设计角度能够分为两类。一类是面向结构的软件project。还有一类是面向对象的软件project。以下我们先宏观把控一以下向对象的软件project,然后在对当中的面向对象的分析在做进一步的解释。
一、面向对象的软件project导图
面向对象的软件project能够分为五个阶段:1、OO分析; 2、OO设计。3、OO编程。 4、OO測试; 5、OO维护。
二、面向对象的分析
三、图解
用面向对象方法开发软件,通常须要建立3种形式的模型它们各自是:描写叙述系统数据结构的对象模型、描写叙述系统控制结构的动态模型和描写叙述系统功能的功能模型。
假设将这三个模型表示做一件事的步骤的话。对象模型表示的是对谁做?功能模型表示的是何时做?动态模型表示的是做什么?
对象模型中的对象、类、主题分别描写叙述的是两个不同级别的抽象,对象抽象成类。类抽象成主题,然后在找出当中的关联和属性,最后在优化。
动态模型的核心是事件的跟踪图和对象的状态图,这两表示“做一件事”是信息流的传递方向与状态。
动态模型中须要编写脚本来描写叙述每个动态交互过程动作序列的信息,构造与用户交互的界面好让用户来输入信息。
功能模型就表示做什么的事情了,三个模型中对象模型是基础,在三个模型的构建中我们还有不断的优化。就相当于结构设计中的每个阶段都要进行评审一样。
四、小结
面向对象分析的关键是找出问题域的对象,并分析它们相互间的关系。终于建立起问题域的简洁、精确、可理解的正确模型。面向对象的程序设计相对于面向结构的程序设计而言是一个“升级”。
面向对象目的在于让代码有更好的可读性,可维护性与可扩展性,这样一来就减少了软件的开发与维护工作工作量,给我们节省了大量的时间。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
面向对象的软件project——面向对象分析的更多相关文章
- 5.15 python 面向对象的软件开发&领域模型
1.面向对象的软件开发 参考地址::http://www.cnblogs.com/linhaifeng/articles/6182264.html#_label14 面向对象的软件工程包括下面几个部: ...
- Python--反射(重点)、面向对象内置方法:如__str__、面向对象的软件开发
复习: Python3统一了类与类型 类的名称空间在定义阶段产生,看名称空间:类.__dict__ Python3特点:可以多继承 Python3都是新式类 继承意义:解决重复代码 组合:也是解决 ...
- day34 反射、面向对象内置方法:如__str__、面向对象的软件开发
Python之路,Day21 = 反射.面向对象内置方法:如__str__.面向对象的软件开发 几个内置查看的方法使用 .__base__ 查看类的继承结构.mro() 对象找属性的顺序存在里面 -- ...
- 从软件project的角度写机器学习3——主要监督学习算法的project性分析
主要机器学习算法的project适用性分析 前段时间AlphaGo跟李世石的大战及相关的深度学习的新闻刷了一遍又一遍的朋友圈.只是这件事情,也仅仅是在机器学习的深度上进一步拓展,而机器学习的广度(也即 ...
- 《软件project》课程报告 —国土资源执法监察管理信息系统建模
***********************************************声明*************************************************** ...
- 项目之软件project(我专业四年都未曾知道这四个字的含义,几句话便懂了)
潘鹏在CSDN上原创.如其它站点转载请注意排版和写明出处: 软件project的本质 一级标题 控制 质量 二级标题 成本 扩展 高内聚低耦合 效率 控制: 成本:企业要求的是以最快的速度完毕可 ...
- 软件project(六)——需求分析
需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤.需求分析的任务就是明白系统必须完毕那些工作,以下是对需求分析这一章做的简要总结. 导图: 解释说明: 我将 ...
- Java面向对象编程 第一章 面向对象开发方法概述
一.软件开发经历的生命周期: ①软件分析 ②软件设计 ③软件编码 ④ 软件测试 ⑤ 软件部署 ⑥软件维护 二.为了提高软件开发效率,降低软件开发成本,一个优良的软件系统应该具备以下特点: ① 可重用性 ...
- 软件project(一)——宏观总结
曾经看视频,看过去就忘.不想再这样子下去了,所以总结了好久.想让自己忘不了.这个过程花费时间有点长,可是假设让自己忘不了.一切都值了. 以下先来一张导图来总结一下<软件project>这门 ...
随机推荐
- JS类定义方式
// 方法1 对象直接量 var obj1 = { v1 : "", get_v1 : function() { return this.v1; }, set_v1 : funct ...
- Windows下Putty连接虚拟机Ubuntu
本文的题目是Windows下使用Putty连接虚拟机中的Ubuntu. 事实上针对这种一个问题,已经有非常多的文章.blog能够參考和学习.可是在本人的学习过程中还是遇到可非常多的问题. 特写下自己的 ...
- 编辑简单的 shell程序
编辑简单的 shell程序 知道了vi编辑器的使用规则之后,结合shell的使用规则,可以编辑简单的 shell程序试试手 题目如下: 1.用while语句创建一个根据输入的数值求累加和(1+2+3+ ...
- Bulk Insert Data
Bulk Insert Data 命名空间:Oracle.DataAccess.Client 组件:Oracle.DataAccess.dll(2.112.1.0) ODP.NET 版本:ODP.NE ...
- Cocos性能优化工具的开发介绍Visual Studio内存泄漏检测工具——Visual Leak Detector
然后,Windows下有什么好的内存泄漏检測工具呢?微软提供Visual Studio开发工具本身没有什么太好的内存泄漏检測功能.我们能够使用第三方工具Visual Leak Detector(下面简 ...
- json2.js参考
json2.js使用參考 json2.js提供了json的序列化和反序列化方法,能够将一个json对象转换成json字符串,也能够将一个json字符串转换成一个json对象. <html> ...
- Linux注意到Makefile
规则: 目标 : 依靠 命令 make是怎样工作的: (1)make在当前文件夹下寻找makefile或Makefile. (2)假设找到,他会寻找文件里的第一个目标文件(target).并把这个文件 ...
- tomcat 重启进程
查看端口: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程. 使用命令:netstat –apn 查看所有的进程和端口使用情况.发现下面的进程列表,其中最后一栏是 ...
- python正文(两)
在本文中,我读了记录和总结<Python标准库>一本书,本节课文的学习和理解. 事实上,在Python于,使用一些方法这段文字是一回事,尤其是经常使用.在一般情况下,会用String这样的 ...
- 高质量c c++编程
第1章 文件结构 每一个C++/C程序通常分为两个文件.一个文件用于保存程序的声明(declaration),称为头文件.还有一个文件用于保存程序的实现(implementation),称为定义(de ...