CScout: A refactoring browser for C

被引:17
作者
Spinellis, Diomidis [1 ]
机构
[1] Athens Univ Econ & Business, Dept Management Sci & Technol, GR-10434 Athens, Greece
关键词
C; Browser; Refactoring; Preprocessor; CODE; TRADE; TOOLS;
D O I
10.1016/j.scico.2009.09.003
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Despite its maturity and popularity, the C programming language still lacks tool support for reliably performing even simple refactoring, browsing, or analysis operations. This is primarily due to identifier scope complications introduced by the C preprocessor. The CScout refactoring browser analyses complete program families by tagging the original identifiers with their precise location and classifying them into equivalence classes orthogonal to the C language's namespace and scope extents. A web-based user interface provides programmers with an intuitive source code analysis and navigation front-end, while an SQL-based back-end allows more complex source code analysis and manipulation. CScout has been successfully applied to many medium and large-sized proprietary and open-source projects identifying thousands of modest refactoring opportunities. (C) 2009 Elsevier B.V. All rights reserved.
引用
收藏
页码:216 / 231
页数:16
相关论文
共 60 条
[1]  
*AM NAT STAND INF, 1989, 98991990 ISOIEC AM N
[2]  
[Anonymous], CGO 04
[3]  
[Anonymous], 2006, Programming in lua
[4]  
[Anonymous], 2002, ACM Transactions on Internet Technology, DOI [10.1145/514183.514185, DOI 10.1145/514183.514185]
[5]  
ANTONIOL G, 1997, ICSM 97
[6]  
AVERSANO L, 2002, SCAM 02
[7]  
Badros GJ, 2000, SOFTWARE PRACT EXPER, V30, P907, DOI 10.1002/(SICI)1097-024X(20000710)30:8<907::AID-SPE324>3.0.CO
[8]  
2-I
[9]  
BAXTER ID, 2001, WCRE 01
[10]   THE C INFORMATION ABSTRACTION SYSTEM [J].
CHEN, YF ;
NISHIMOTO, MY ;
RAMAMOORTHY, CV .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1990, 16 (03) :325-334