温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023
基于
CCCC
游戏
应用程序
软件
度量
基于基于 CCCCCCCC 游戏应用程序的软件度量游戏应用程序的软件度量 打开文本图片集 摘要:该文使用 C/C+代码度量工具对四款采用不同程序设计语言编写的游戏应用程序进行软件度量。四款应用程序中有三个完全使用 C+编写,每个应用程序所包含的类都不尽相同。该工具计算每个应用的度量结果,给出度量的极限值,并以此为依据进行评估。通过分析不同程序每行注释的圈复杂度结果的相关性,揭示出编程时需要采用的编码基准。关键词:代码度量;代码行;游戏应用程序 中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)22-0082-02 1 概述 如今,计算机在我们生活的各个领域都扮演着不可或缺的角色,与此同时,在计算机上运行的软件也就越来越重要。因此,对软件开发和软件产品的控制与预测就成为一个亟待解决的问题。软件度量就是衡量软件品质高低的一种方法。软件品质就是指软件本身及其执行流程能满足用户的需求的程度。在过去 30 年间,软件度量或者软件工程度量是一个非常活跃的软件研究领域。它可以理解为:度量是客观对象到数字对象的同态映射。同态映射包括所有关系和结构映射。用另一句话说,软件品质和软件度量成直对关系。C/C+程序设计语言编写的游戏应用程序可以通过一些代码度量工具进行评估。C+代码度量工具(CCCC)是用以度量 C/C+源代码的工具,它以 HTML 格式生成度量报告。报告中包含各种表格、交换区和覆盖区的各种模块。为了验证度量工具的有效性,我们选择了四款由不同编程语言开发的游戏应用程序,并选择一些典型度量标准评估这些应用。目前,这些度量工具已经通过网络得到了广泛推广和使用。2 度量环境 我们选取了四款使用 C/C+开发的游戏:贪吃蛇、弹珠球、拳击、赛车。这四款游戏没有任何相似之处,且均可在计算机上独立运行,对系统内存负载很小。它们都不是图形化的游戏,可以在任何支持基本视频处理器和 2GB 以上内存的计算机上运行。因此,使用 C+代码度量工具(CCCC)和 R 工具很容易评估它们的度量数据。3 度量数据 NOM:模块数(包括主模块的类)。分析仪识别出的非常重要的模块数量。有价值的模块包含所有的类和一些被甄别出的功能模块。LOC:代码行数。分析仪识别出的非空白、非备注的代码行数。COM:注释行数。分析仪识别出的备注行数。MVG:McCabe 圈复杂度。度量组成程序功能选择上的不可预测性。严格含义上讲,是将软件的流程图转化为有向图,然后以图论的知识和计算方法来衡量软件的质量。分析仪通过识别包含在每个功能内的明确选择结果,从而对正式度量变量进行有效的估算。ILC=Lines 0f code per line of remark which demonstrates thickness of remarks as for printed size of the program.Lc:代码行一注释行比,体现程序打印尺寸中备注的百分比。M_C=Cyclomatic Complexity per line 0f remark which demonstrates thickness of remarks as for consistent muhifaceted nature of program M_C:每行注释的圈复杂度,体现连续、多面性的程序中备注的百分比。REJ:解析器忽略的行数。4 结果分析 我们使用 C+代码度量工具(CCCC)对四款游戏进行软件度量,结果如表 1 所示。表中给出了每款游戏的度量结果,从中可以看出:当应用程序的代码行减少,注释行和功能模块的数量也同步减少时,McCabe 圈复杂度就会降低。5 度量工具 5.1CCCC C+代码度量工具(CCCC)是一种用于分析各种程序设计语言(主要是 C/C+)源代码的工具,它在分析各种代码处理结果的基础上,会生成 HTML 格式的度量报告。尽管该工具设计之初主要用以分析 C/C+源代码,但现在的版本也可用来分析 C#、Java、Pvthon 等程序设计语言的源代码。这种对源代码的度量通常被称为“软件度量”,或更准确地称为“软件过程度量”(因为“软件度量”也包括对软件生产过程的度量)。在现代软件工程领域有一种达成共识的主流思想,即对应用程序而言,虽然就什么是值得度量的和哪些度量的意义不大的问题上还没有达成统一的意见,但进行某种意义上的度量终归是一件好事。C+代码度量工具(CCCC)现已被开发成一款免费软件,并以开源的形式发布,用以鼓励用户自己编译程序并修改源代码,体现其偏好和兴趣。5.2R 工具 R 工具是一个界面友好、免费开源的工具,用户可以使用它来绘制图表。R 工具提供各种类型的图表模板,来比较不同应用程序的数据。使用该工具时,用户只需先加载数据,然后根据提示,一步步按指令形成图表即可。我们通过 R 工具绘制出的若干图表,能更清晰、直观地观察到表中各应用程序的评估结果及关联性。最终,图表 6 展现了各种应用程序的圈复杂度。6 结论 通过使用 C+代码度量工具(CCCC),我们可以评估每个应用程序的度量结果,而无需获取信息。每个应用程序的评估结果由工具给出,而图表则进一步佐证了度量的准确和结果的有效。游戲开发与制作所使用的方法和工具有很多,以至于难以追踪其数据。随着游戏应用份额的迅猛增长和类型趋于多样化,统计数据的比较往往成为不可能完成的任务,但是在使用这些工具和方法后,让一切成为可能。因此,拥有广阔的应用前景。