面向对象语言的优点

1.一致的表达方法

从前面章节的讲述中可以知道,面向对象开发基于不随时间变化的、一致的表示方法。这种表示方法应该从问题域到OOA,从OOA到OOD,最后从OOD到面向对象编程(OOP),始终稳定不变。

一致的表示方法:
既有利于在软件开发过程中始终使用统一的概念,
也有利于维护人员理解软件的各种配置成分。

2.可重用性

为了能带来可观的商业利益,必须在更广泛的范围中运用重用机制,而不是仅仅在程序设计这个层次上进行重用。因此,在OOA、OOD直到OOP中都显式地表示问题域语义,其意义是十分深远的。  随着时间的推移,软件开发组织既可能重用它在某个问题域内的OOA结果,也可能重用相应的OOD和OOP结果。

3.可维护性

以ATM系统为例,说明在程序内部表达问题域语义对维护工作的意义。假设在维护该系统时没有合适的文档资料可供参阅,于是维护人员人工浏览程序或使用软件工具扫描程序,记下或打印出程序显式陈述的问题域语义,维护人员看到“ATM”、“账户”、“现金兑换卡”等,这对维护人员理解所要维护的软件将有很大帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/452104.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最好的英文词典

辞典对于学外语的作用,怎么强调也不过分。经常接触英语的人都知道,遇到生词不可怕,可怕的是遇到认识的单词,又不明白这句话什么意思。这个时候,辞典的作用就发挥出来了。 今天一位朋友问我一句英文的意思,…

oracle用户创建及权限设置

权限: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> conn / as sysdba; SQL>create user username identified by password SQL> grant dba to username; SQL> conn username/password…

Android动画之逐帧动画(FrameAnimation)详解

今天我们就来学习逐帧动画,废话少说直接上效果图如下: 帧动画的实现方式有两种&#xff1a; 一、在res/drawable文件夹下新建animation-list的XML实现帧动画 1、首先在res/drawable文件夹下添加img00-img24共25张图片 2、新建frame_anim.xml [html] view plaincopy <?xml v…

ajax-简单参数方法实现阴影效果

注&#xff1a; 简单参数 &#xff08;按照参数的数量和位置传递参数&#xff09; 使用时按照位置、数量传递 shadow.js函数//简单参数实现方式/** slices:阴影* opacity:透明度* zIndex:层级* */jQuery.fn.shadow_simple function (slices,opacity,zIndex) { //获取到每个…

第一二三范式的简单理解

第一范式&#xff08;无重复的列&#xff09; 定义&#xff1a;数据库表的每一列都是不可分割的原子数据项&#xff0c;而不能是集合&#xff0c;数组&#xff0c;记录等非原子数据项。如果实体中的某个属性有多个值时&#xff0c;必须拆分为不同的属性 通俗解释&#xff1a;一…

网络爬虫--1.通用爬虫和聚焦爬虫

文章目录一.前言二.通用爬虫1.工作原理2.通用爬虫的局限性三.聚焦爬虫一.前言 根据使用场景&#xff0c;网络爬虫可分为 通用爬虫 和 聚焦爬虫 两种。 其中通用网络爬虫是捜索引擎抓取系统&#xff08;Baidu、Google、Yahoo等&#xff09;的重要组成部分。主要目的是将互联网…

敏捷教练的工具箱

学习并不是简简单单的阅读和浏览&#xff0c;而是一个积累的过程&#xff0c;一个通过持续的学习&#xff0c;对自己的知识体系不断丰富、索引的过程。接下来我会从四个方面入手分享我的经验。 高质量的信息源和高效的学习 Google是一个很好的工具&#xff0c;通过它&#x…

log4j教程

详细的Log4j使用教程 转载 2016年08月19日 14:44:49 5072 日志是应用软件中不可缺少的部分&#xff0c;Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站&#xff1a;jakarta.apache.org/log4j 可以免费下载到Log4j最新版本的软件包。…

BC范式介绍

设关系模式R<U&#xff0c;F>∈1NF&#xff0c;如果对于R的每个函数依赖X→Y&#xff0c;若Y不属于X&#xff0c;则X必含有候选码&#xff0c;那么R∈BCNF。 即为&#xff1a;对于关系模式R&#xff0c;若 R为第一范式&#xff0c;且每个属性都不部分依赖于候选键也不传递…

com.jhlabs:imaging:jar:01012005 所在仓库+captcha验证码maven依赖

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 <repositories> <repository> <id>atlassian</id> <name>atlassian</name&g…

python 发送邮件的两种方式【终极篇】

python 发送邮件的两种方式【终极篇】 一&#xff0c;利用python自带的库 smtplib简单高效 from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.header import Header import smtplib from django.conf import settingsmail_hos…

网络爬虫--2.HTTP和HTTPS

文章目录一.简介二.HTTP的请求与响应三.客户端HTTP请求1.格式2.请求方法四.常用的请求报头1.Host (主机和端口号)2.Connection (链接类型)3.Upgrade-Insecure-Requests (升级为HTTPS请求)4. User-Agent (浏览器名称)5. Accept (传输文件类型)6.Referer (页面跳转处)7.Accept-En…

解决win7的outlook打不开的问题

outlook打不开&#xff0c;一直显示正在处理 解决方法&#xff1a; 1. 按住Ctrl,双击打开组件&#xff0c;会提示是否进入安全模式&#xff0c; 进入安全模式 2. 单击Outlook中的文件-选项-加载项- 左下角的“COM加载项“ 旁边的“转到”&#xff0c;将所有加载项前面的勾都去掉…

IBM王阳:软件是凝聚创新力的最佳平台

导读&#xff1a;在IBM全球副总裁兼IBM中国开发中心总经理王阳博士看来&#xff0c;IBM百年不衰的根本原因在于将创新力凝结成软件然后进行合适的传播&#xff0c;其间最重要的是成功打造出了一个吸引人才、培养研发人才并激发出人才创新力的环境和氛围。而保持创新领导力的关键…

数据库的规范化

在关系数据库中&#xff0c;对关系模式的基本要求是满足第一范式。 规范化程度过低的关系不一定能够很好地描述现实世界 可能存在插入异常、删除异常、修改复杂、数据冗余等问题 解决方法就是对其进行规范化&#xff0c;转换成高级范式 一个低一级范式的关系模式&#xff0c;通…

Jquery 多行拖拽图片排序 jq优化

<!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>jQuery图片拖动排序代码</title><style type"text/css">.item_container{position:relative;height:auto;overflow:hidden;} .item_content ul{li…

应该把script标签放在哪里

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 概述&#xff1a; 如果在页面中写JS的话&#xff0c;那必然会用到script标签&#xff0c;理论上script标签放在哪里都是可以的&#xff…

网络爬虫--3.str和bytes的区别

文章目录一.bytes二.str和bytes相互转换三.bytearray一.bytes bytes对象只负责以二进制字节序列的形式记录所需记录的对象&#xff0c;至于该对象到底表示什么&#xff08;比如到底是什么字符&#xff09;则由相应的编码格式解码所决定。 bytes是Python 3中特有的&#xff0c…

git使用问题

1、错误&#xff1a;The following untracked working tree files would be overwritten by checkout 。后面跟了几个文件 场景&#xff1a;需要从一个分支切换到另一个分支时报错 方法&#xff1a;git clean -d -fx "" 原因&#xff1a;之前修改了.gitignore文件&am…

jdbc写入和读取过程

[jdbc写操作] Class.forName("com.mysql.jdbc.Driver"); Connection conn DriverManager.getConnection("jdbc:mysql://localhost:3306/big","root","root"); ppst conn.preparedStatement("insert into test(id,name,age) val…