程序设计语言

程序设计语言使用于书写计算机程序的语言。程序设计语言有3个方面的因素,即语法,语义和语用。语法标识程序的结构或形式。语义表示程序的含义。语用表示程序与使用者的关系。

     程序设计语言的发展史

 

               

     

     程序的复杂性度量

 

         1,代码行度量法

             出错率:每100行可能有的错误数目范围从0.04%—7%之间

             对于少于100个语句的小程序,源代码行数与出错率是线性相关的。随着程序的增大,出错率以非线性方式增长。

 

         2,McCabe度量法

             又称环路复杂性度量,是一种基于程序控制流的复杂性度量方法

             计算环路复杂性的方法:在一个强连通的有向图G中,公式如下:

                V(G)=m-n+p

              其中, V(G)是有向图G中环路个数,m是图G中弧数,n是图G中结点数,p是图G中的强连通分量个数。

              举例:

               

 

         3,Halstead的软件科学

             运用Halstead的软件科学方法,我们可以求出程序的长度,程序量,程序量的比率(语言的抽象级别),程序员的工作量,程序的潜在错误等。

 

转载于:https://www.cnblogs.com/askDing/p/5108736.html

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

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

相关文章

python集合类型是一种具体的数据类型_Python3基础语法之集合类型

set也是一种组合数据类型,支持成员关系操作(in)、对象大小计算操作符(len()),并且是iterable。集合数据类型至少提供一个set.isdisjoin()方法,支持比较,也支持为逻辑操作(在集合用于联合、交叉等上下文中使用)。只有可哈希运算的对…

Linux 安装之U盘引导

说到装系统最简单的方法无非就是找个系统安装光盘来然后就一步一步慢慢的安装。简单是简单但好似大多数人好像都木有Linux的安装光盘。因此只能用U盘来模拟光盘的功能来装系统咯。 电脑上装有Windows 7现要装Linux变双系统。 安装Linux前的准备: 1、电脑上分出空闲的…

OSGi:简介

为基于Java的系统创建的OSGi提供了模块化系统的框架。 OSGi使得可以定义每个单独模块与其他模块的依赖关系,并使用户可以控制生命周期并动态更改系统的每个组件。 OSGi是一个规范,最常见的实现可以算作Equinox , Apache Felix和Knoplerfish 。…

一起动手打造个人娱乐级linux

我们使用电脑,一直以来用的都是windows,但是对于像我这种爱折腾的人来说,尝试使用linux系统应该是一种不错的体验。说到linux,许多人可能都没听过,或者知道的人对它印象是这样的: 然而,linux发展…

PostgreSQL数据类型

http://blog.csdn.net/neo_liu0000/article/details/6254086 第六章 数据类型 6.1概述 PostgreSQL 提供了丰富的数据类型。用户可以使用 CREATE TYPE 命令在数据库中创建新的数据类型。PostgreSQL 的数据类型被分为四种,分别是基本数据类型、复合数据类型、域和伪类…

centos 卸载ffmpeg_CentOS Linux 操作系统安装 FFmpeg 教程

FFmpeg 是一个非常热门的开源项目,用来编解码音频视频流,被广泛用于各种流服务中。本教程在 CentOS 6、7、8 上面都可以使用,用来安装 FFmpeg 软件。一、安装前需求一个 sudo 账户,一般都是默认 root 账户即可。1、CentOS 8安装所…

Linux 火狐浏览器安装Flash插件

Linux系统安装完毕后,发现火狐浏览器视频播放不了而且总是提示安装Flash。而按火狐浏览器上的提示Flash插件安装总是失败,木有办法只能手动安装Flash插件啦。 到Flash官网:http://get.adobe.com/cn/flashplayer/ 下载系统对应的Flash插件&…

按汇总分组/多维数据集

时不时地,您会遇到一个使您达到SQL限制的要求。 我们中的许多人可能会提早放弃并使用Java / [或您的语言]计算内容。 相反,使用SQL可能是如此简单快捷。 如果您使用的是高级数据库,例如DB2 , Oracle , SQL Server &…

TCPUDP

TCP(传输控制协议) 建立连接,形成传输数据的通道在连接中进行大数据传输(数据大小不受限制)通过三次握手完成连接,是可靠协议,安全送达(三次握手向服务器发送请求,响应请求回复,发送…

Windows和linux双系统——修改默认启动顺序

电脑上装了Windows 7和Ubantu双系统,由于Linux系统用的次数比较少并且还是默认的启动项对此很不能容忍,因此得修改Windows为默认的启动项。 由于电脑上的系统引导程序是GRUB,因此修改当然也就落到Linux系统上啦。 修改/boot/grub/grub.cfg该文…

ft232h引脚_usb转串口芯片 ft232的奇怪现象

硬件平台:stm32f407ft232RL按照手册上的电路,我用USB接口给ft232RL供电,如下图:0288f358ccd0026690b2443b41d98f0f_224.png (0 Bytes, 下载次数: 12)2010-12-14 22:54 上传我在这个电路的基础上我用单片机串口和芯片对应的TX和RX相…

微软Team Foundation Service 的Scrum模板中的Feature和Backlog Items 的区别【转载】

Features help us plan work better in Team Foundation Service Scrum process 【原文:http://www.nsilverbullet.net/2013/06/04/features-help-us-plan-work-better-in-team-foundation-service-scrum-process/】 Recently a new work item type named “Featur…

LeWeb – 2011 –综述

在我去机场前几个小时,我将写最后一篇与LeWeb相关的文章。 这次,我将专注于会议本身。 参加过几次开发人员会议(虽然不多,但足以给您带来一定的经验),我已经开发了自己的自定义会议等级框架。 我使用以下6条…

Java 入门基础——面向对象的特征

计算机软件系统是现实生活中的业务在计算机中的映射,而现实生活中的业务其实就是一个个对象协作的过程。面向对象编程就是按现实业务一样的方式将程序代码按一个个对象进行组织和编写,让计算机系统能够识别和理解用对象方式组织和编写的程序代码&#xf…

(总结)密码破解之王:Ophcrack彩虹表(Rainbow Tables)原理详解(附:120G彩虹表下载)...

http://www.ha97.com/4009.html转载于:https://www.cnblogs.com/chaizp/p/5111188.html

python游走代码_介绍一个全局最优化的方法:随机游走算法(Random Walk)

1. 关于全局最优化求解全局最优化是一个非常复杂的问题,目前还没有一个通用的办法可以对任意复杂函数求解全局最优值。上一篇文章讲解了一个求解局部极小值的方法——梯度下降法。这种方法对于求解精度不高的情况是实用的,可以用局部极小值近似替代全局最…

iOS单元测试

iOS单元测试异步测试需要建立预期,因为苹果的单元测试都是同步的,测试到异步的时候建立一个预期,预期如果在规定时间(自定义)完成,代表单元测试通过。 还有 猴子测试 ,就是去github上找到猴子测…

调试JVM

在某些(极少数)情况下,您可能会遇到使JVM本身崩溃的情况。 我最近通过将ThreadGroup的名称设置为null来进行管理 。 在这些情况下,调试JVM本身很有用,这样可以更精确地定位崩溃。 这是完成此操作的步骤(它们…

javaScript DOM编程常用的方法与属性

DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范,DOM是一种与浏览器,平台,语言无关的接口,使得你可以访问页面其他的标准组件。 Node接口的特性和方法 特性/方法类型/放回类型说明nodeName String 节点的名字;根…

一:验证微信的Token

前言:申请到微信公众号的同学,可能会挺感兴趣的,毕竟微信公众号,确实是一个好东西,它提供了一个很好的平台,而且它自带有一套管理模板,对于微信公众号可以很好的管理。 但是也仅仅是很好的管理,…