跳到主要内容
10.1145/1081706.1081712acm会议文章/章节视图摘要出版物页面fse公司会议记录会议集合
第条

ASTEC:重构C的新方法

出版:2005年9月1日出版历史

摘要

C语言是世界上使用最广泛的语言之一,尤其是在关键基础设施软件中。C程序依赖于使用C预处理器处理的宏,但这些宏很难分析,而且往往容易出错[4]。现有的分析和转换C源代码的工具对预处理器有基本的支持,导致错误消息模糊不清,重构困难。我们提出了一个由三部分组成的解决方案:(1)替换宏语言ASTEC,这解决了预处理器最重要的缺陷,并消除了它引入的许多错误;(2) 一个翻译器MACROSCOPE,可以半自动地将现有代码转换为ASTEC;(3),一个自然处理预处理器构造的ASTEC软件重构工具。ASTEC的主要优点是其可分析性和可重构性。我们提供了几个由ASTEC支持的重构。此外,ASTEC消除了许多可能困扰C预处理器宏的错误源;Ernst等人[4]估计,超过20%的宏可能包含错误。在本文中,我们描述了我们的翻译和重构工具,并在包括OpenSSH和Linux内核在内的一套程序上对它们进行了评估。

工具书类

  1. ANSI/ISO/IEC 9899。编程语言-C,1999年。谷歌学者谷歌学者
  2. 格雷格·巴德罗斯(Greg J.Badros)。PCP3:用于预处理器分析和转换的C前端。华盛顿大学技术报告,1997年10月。谷歌学者谷歌学者
  3. Eclipse.org。http://www.eclipse.org。谷歌学者谷歌学者
  4. Michael D.Ernst、Greg J.Badros和David Notkin。C预处理器使用的实证分析。IEEE软件工程学报,28(12):1146--11702002年12月。谷歌学者谷歌学者数字图书馆数字图书馆
  5. 马丁·福勒(Martin Fowler)、肯特·贝克(Kent Beck)、约翰·布兰特(John Brant)、威廉·奥普戴克(William Opdyke)和唐·罗伯茨(Don Roberts)。重构:改进现有代码的设计。Addison-Wesley,1999年。谷歌学者谷歌学者数字图书馆数字图书馆
  6. 亚历杭德拉·加里多和拉尔夫·约翰逊。重构C程序的挑战。2002年5月,《软件进化原理国际研讨会论文集》。谷歌学者谷歌学者数字图书馆数字图书馆
  7. 亚历杭德拉·加里多和拉尔夫·约翰逊。使用条件编译重构C。2003年10月,第18届IEEE自动化软件工程国际会议论文集。谷歌学者谷歌学者
  8. 帕诺斯·利瓦达斯和大卫·T·斯莫尔。理解包含预处理器构造的代码。技术报告,软件工程研究中心,1994年6月。谷歌学者谷歌学者
  9. Microsoft Visual Studio。http://msdn.microsoft.com/vstudio/。谷歌学者谷歌学者
  10. Diomidis Spinellis公司。预处理语言中的全局分析和转换。IEEE软件工程学报,29(11):1019--10302003年11月。谷歌学者谷歌学者数字图书馆数字图书馆
  11. 玛丽安·维特克。使用预处理器重构浏览器。2003年,第七届欧洲软件维护和重组会议。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. ASTEC:重构C的新方法

        建议

        评论

        登录选项

        检查您是否可以通过登录凭据或您的机构访问本文。

        登录

        完全访问权限

        • 发布于

          封面图片ACM会议
          ESEC/FSE-13:与第13届ACM SIGSOFT软件工程基础国际研讨会联合举行的第10届欧洲软件工程会议记录
          2005年9月
          402页
          国际标准图书编号:1595930140
          内政部:10.1145/1081706
          • 封面图片ACM SIGSOFT软件工程说明
            ACM SIGSOFT软件工程说明 第30卷第5期
            2005年9月
            462页
            国际标准编号:0163-5948
            内政部:10.1145/1095430
            期刊目录

          版权所有©2005 ACM

          如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护]

          出版商

          计算机协会

          美国纽约州纽约市

          出版历史

          • 出版:2005年9月1日

          权限

          请求有关此文章的权限。

          请求权限

          检查更新

          限定符

          • 第条

          接受率

          总体验收率112属于543提交文件,21%

          即将召开的会议

          24年FSE
          第32届ACM软件工程基础国际会议
          2024年7月15日至19日
          Ipojuca(伯南布哥),巴西

        PDF格式

        以PDF文件查看或下载。

        PDF格式

        电子阅读器

        使用eReader联机查看。

        电子阅读器