PL EN


Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Tytuł artykułu

Review of Automated Code Refactoring of C# Programs

Wybrane pełne teksty z tego czasopisma
Identyfikatory
Warianty tytułu
Języki publikacji
EN
Abstrakty
EN
Code refactoring is supported by many Integrated Development Environments. This paper is focused on the automated code refactoring of C# programs. We have analyzed more than sixty refactorings available in three popular IDEs. We cataloged different restrictions, defects, and other quality concerns associated with the implementation of the refactorings, taking into account both modification of the production code and of the corresponding test cases. An extension to automate selected refactoring improvements has been developed for the ReSharper platform and experimentally verified.
Rocznik
Tom
Strony
937--941
Opis fizyczny
Bibliogr. 16 poz., tab.
Twórcy
  • Warsaw University of Technology Institute of Computer Science Nowowiejska 15/19, 00-665 Warsaw, Poland
  • Warsaw University of Technology Institute of Computer Science Nowowiejska 15/19, 00-665 Warsaw, Poland
Bibliografia
  • 1. M. Fowler, Refactoring: improving the design of existing code. 2nd ed. Addison-Wesley, 2018.
  • 2. A. A. B. Baqais and M. Alshayeb, “Automatic software refactoring: a systematic literature review,” Software Quality Journal, vol. 28, 2020, pp. 459-502, http://dx.doi.org/10.1007/s11219-019-09477-y
  • 3. “ReSharper: The Visual Studio extension for .NET developers by JetBrains,” 2023, https://www.jetbrains.com/resharper/, [Online, Accessed 20 Jan 2023]
  • 4. A. M. Eilertsen and G. C. Murphy, “The usability (or not) of refactoring tools,” in Proc. IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), 2021, pp. 237-248. http://dx.doi.org/10.1109/SANER50967.2021.00030
  • 5. M. Gligoric, F. Behrang, Y. Li, J. Overbey, M. Hafiz, and D. Marinov, “Systematic Testing of Refactoring Engines on Real Software Projects,” in Proc. ECOOP 2013 – Object-Oriented Programming, LNCS vol 7920. Springer, Berlin, Heidelberg. 2013, pp. 629–654, https://doi.org/10.1007/978-3-642-39038-8_26
  • 6. M. Schäfer, A. Thies, F. Steimann, and F. Tip, "A Comprehensive Approach to Naming and Accessibility in Refactoring Java Programs," IEEE Transactions on Software Engineering, vol. 38, no. 6, 2012, pp. 1233-1257, http://dx.doi.org/10.1109/TSE.2012.13
  • 7. Y. Kashiwa, K. Shimizu, B. Lin, G. Bavota, M. Lanza, Y. Kamei, and N. Ubayashi, “Does refactoring break tests and to what extent?” in Proc. IEEE International Conference on Software Maintenance and Evolution (ICSME), 2021, pp.171-182, http://dx.doi.org/10.1109/ICSME52107.2021.00022
  • 8. Y. Gao, H. Liu, X. Fan, Z. Niu, and B. Nyirongo, “Analyzing refactoring' impact on regression test cases,” in Proc. IEEE 39th Annual Computer Software and Applications Conference (COMPSAC), vol. 2, 2015, pp. 222-231, http://dx.doi.org/10.1109/COMPSAC.2015.16
  • 9. H. Passier, L. Bijlsma, C. Bockisch,, “Maintaining unit tests during refactoring,” in Proc. 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, no. 18, 2016, pp.1-6. http://dx.doi.org/10.1145/2972206.2972223
  • 10. A. Derezinska, O. Sobieraj, “Enhancing unit tests in refactored Java programs,” in Proc. 18th Inter. Conf. on Evaluation of Novel Approaches to Software Engineering - ENASE, Scitepress, 2023, pp. 734-741, http://dx.doi.org/10.5220/0011997800003464
  • 11. M. Gatrell, S. Counsell,S. Swift, R. M. Hierons, and X. Liu, “Test and production classes of an industrial C# system: a refactoring and fault perspective,” in Proc. 41st Euromicro Conference on Software Engineering and Advanced Applications, 2015, http://dx.doi.org/10.1109/SEAA.2015.40
  • 12. M. Linka, “Visual Studio refactoring and code style management toolset,” M.S. thesis, Charles University in Prague, 2015.
  • 13. E. Firouzi and A. Sami, "Visual Studio automated refactoring tool should improve development time, but ReSharper led to more solution-build failures," in IEEE Workshop on Mining and Analyzing Interaction Histories (MAINT), Hangzhou, China, 2019, pp. 2-6, http://dx.doi.org/10.1109/MAINT.2019.8666936
  • 14. S. Amann, S. Proksch, S. Nadi, and M. Mezini, "A study of Visual Studio usage in practice,” in Proc. IEEE 23rd International Conference on Software Analysis Evolution and Reengineering (SANER), vol. 1, pp. 124-134, 2016.
  • 15. “Rider: The Cross-Platform .NET IDE from JetBrains,” 2023, https://www.jetbrains.com/rider/, [Online, Accessed 20 Jan 2023]
  • 16. Refix, https://galera.ii.pw.edu.pl/~adr/Refix/ [Online , Accessed 30 July 2023]
Uwagi
1. Thematic Tracks Short Papers
2. Opracowanie rekordu ze środków MEiN, umowa nr SONP/SP/546092/2022 w ramach programu "Społeczna odpowiedzialność nauki" - moduł: Popularyzacja nauki i promocja sportu (2024).
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-c250ed92-4d16-48ac-b016-e8f8257d6007
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.