Preview

Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS)

Advanced search

Refactoring on the whole project

https://doi.org/10.15514/ISPRAS-2014-26(1)-16

Abstract

Refactoring is one of the most popular and successful techniques in improving source code. It is an integral part of agile development methods. However, we still lack effective tools for source code automatic refactoring for C/C++. This article focuses on one of approaches to developing a tool for such refactoring. It is worth mentioning that possibility of applying refactoring only on one translation unit is significant a limitation for any refactoring tool. Hence, an important aspect of this article is a detailed description of transition from refactoring on one translation unit scheme to refactoring on the whole project. Besides, special attention is paid here to refactoring «Rename» as it is one of the most widely used refactorings on the whole project.

About the Authors

S. V. Syromyatnikov
Institute for System Programming of RAS
Russian Federation


I. E. Bronshteyn
Institute for System Programming of RAS
Russian Federation


N. L. Lugovskoy
Institute for System Programming of RAS
Russian Federation


References

1. M. Fowler., K. Beck, J. Brant, W. Opdyke, D. Roberts. Refactoring. Improve the design of exesting code. Addison-Wesley, 2001

2. http://www.klocwork.com/products/insight/refactoring

3. http://www.eclipse.org/cdt

4. https://www.devexpress.com/Products/CodeRush

5. N. L. Lugovskoj. Podkhod dlya provedeniya refaktoringa «Vydelenie funktsii» v instrumente Klocwork Insight [“Extract Function” Refactoring in Klocwork Insight Toolkit]. Trudy ISP RАN [The Proceedings of ISP RAS]. 2012, vol. 23, pp. 107-132 (in Russian).

6. N. G. Zeltser. Poisk povtoryayushhikhsya fragmentov iskhodnogo koda pri avtomaticheskom refaktoringe [Automatic clone detection for refactoring]. Trudy ISP RАN [The Proceedings of ISP RAS]. 2013, vol. 25, pp. 39-50 (in Russian).

7. http://www.opennet.ru/docs/RUS/diff/diff-3.html

8. Working Draft, Standard for Programming Language C++, http://www.open-std.org/Jtc1/sc22/wg21/docs/papers/2011/n3242.pdf


Review

For citations:


Syromyatnikov S.V., Bronshteyn I.E., Lugovskoy N.L. Refactoring on the whole project. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2014;26(1):395-402. (In Russ.) https://doi.org/10.15514/ISPRAS-2014-26(1)-16



Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)