English
Related papers

Related papers: Code Clone Refactoring in C# with Lambda Expressio…

200 papers

Software refactoring is the process of changing the structure of software without any alteration in its behavior and functionality. Presuming it is carried out in appropriate opportunities, refactoring enhances software quality…

Software Engineering · Computer Science 2023-01-20 Hanieh Khosravi , Abbas Rasoolzadegan

Cloned code is one of the most important obstacles against consistent software maintenance and evolution. Although today's clone detection tools find a variety of clones, they do not offer any advice how to remove such clones. We explain…

Software Engineering · Computer Science 2013-01-14 Daniel Speicher , Andri Bremm

Large Language Models (LLMs), like ChatGPT, have gained widespread popularity and usage in various software engineering tasks, including refactoring, testing, code review, and program comprehension. Despite recent studies delving into…

Software Engineering · Computer Science 2024-02-12 Eman Abdullah AlOmar , Anushkrishna Venkatakrishnan , Mohamed Wiem Mkaouer , Christian D. Newman , Ali Ouni

Code clones are identical or similar code segments. The wide existence of code clones can increase the cost of maintenance and jeopardise the quality of software. The research community has developed many techniques to detect code clones,…

Software Engineering · Computer Science 2022-04-12 Wahidur Rahman , Yisen Xu , Fan Pu , Jifeng Xuan , Xiangyang Jia , Michail Basios , Leslie Kanthan , Lingbo Li , Fan Wu , Baowen Xu

Clustering is a difficult and widely-studied data mining task, with many varieties of clustering algorithms proposed in the literature. Nearly all algorithms use a similarity measure such as a distance metric (e.g. Euclidean distance) to…

Neural and Evolutionary Computing · Computer Science 2019-10-24 Andrew Lensen , Bing Xue , Mengjie Zhang

Cloning is a general approach to create new functionality within variants as well as new system variants. It is a fast, flexible, intuitive, and economical approach to evolve systems in the short run. However, in the long run, the…

Software Engineering · Computer Science 2021-04-13 Kamil Rosiak

A C decompiler converts an executable into source code. The recovered C source code, once re-compiled, is expected to produce an executable with the same functionality as the original executable. With over twenty years of development, C…

Software Engineering · Computer Science 2023-11-30 Wai Kin Wong , Huaijin Wang , Zongjie Li , Zhibo Liu , Shuai Wang , Qiyi Tang , Sen Nie , Shi Wu

This Innovative Practice full paper explores how Large Language Models (LLMs) can enhance the teaching of code refactoring in software engineering courses through real-time, context-aware feedback. Refactoring improves code quality but is…

Software Engineering · Computer Science 2025-08-14 Anshul Khairnar , Aarya Rajoju , Edward F. Gehringer

To refactor already working code while keeping reliability, compatibility and perhaps security, we can borrow ideas from micropass/nanopass compilers. By treating the procedure of software refactoring as composing code transformations, and…

Software Engineering · Computer Science 2023-08-15 Yu Liu

Long methods that encapsulate multiple responsibilities within a single method are challenging to maintain. Choosing which statements to extract into new methods has been the target of many research tools. Despite steady improvements, these…

Software Engineering · Computer Science 2024-04-26 Dorin Pomian , Abhiram Bellur , Malinda Dilhara , Zarina Kurbatova , Egor Bogomolov , Timofey Bryksin , Danny Dig

Refactoring is the de-facto practice to optimize software health. While several studies propose refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how…

Software Engineering · Computer Science 2021-11-16 Eman Abdullah AlOmar , Tianjia Wang , Vaibhavi Raut , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

As the complexity and size of software projects increases in real-world environments, maintaining and creating maintainable and dependable code becomes harder and more costly. Refactoring is considered as a method for enhancing the internal…

Software Engineering · Computer Science 2018-11-27 Mohammad Raji

Code comments are the primary means to document implementation and facilitate program comprehension. Thus, their quality should be a primary concern to improve program maintenance. While much effort has been dedicated to detecting bad…

Software Engineering · Computer Science 2021-08-26 Arianna Blasi , Nataliia Stulova , Alessandra Gorla , Oscar Nierstrasz

Maintenance of existing software requires a large amount of time for comprehending the source code. The architecture of a software, however, may not be clear to maintainers if up to date documentations are not available. Software clustering…

Software Engineering · Computer Science 2021-10-05 Alvin Jian Jia Tan , Chun Yong Chong , Aldeida Aleti

Refactoring is a common software engineering practice that improves code quality without altering program behavior. Although tools like ReExtractor+, RefactoringMiner, and RefDiff have been developed to detect refactorings automatically,…

Software Engineering · Computer Science 2025-11-20 Pedro Simões , Rohit Gheyi , Rian Melo , Jonhnanthan Oliveira , Márcio Ribeiro , Wesley K. G. Assunção

Developers introduce code clones to improve programming productivity. Many existing studies have achieved impressive performance in monolingual code clone detection. However, during software development, more and more developers write…

Software Engineering · Computer Science 2023-09-08 Jia Li , Chongyang Tao , Zhi Jin , Fang Liu , Jia Li , Ge Li

Software developers often repeat code changes, known as "code change patterns" (CPATs), within and across projects. Automating these CPATs accelerates development, but current Transformation by Example (TBE) techniques are limited by the…

Software Engineering · Computer Science 2024-06-18 Malinda Dilhara , Abhiram Bellur , Timofey Bryksin , Danny Dig

Large language models (LLMs) have achieved notable success in code generation. However, they still frequently produce uncompilable output because their next-token inference procedure does not model formal aspects of code. Although…

Machine Learning · Computer Science 2025-05-09 Niels Mündler , Jingxuan He , Hao Wang , Koushik Sen , Dawn Song , Martin Vechev

Most existing pre-trained language models for source code focus on learning the static code text, typically augmented with static code structures (abstract syntax tree, dependency graphs, etc.). However, program semantics will not be fully…

Software Engineering · Computer Science 2023-06-14 Yangruibo Ding , Ben Steenhoek , Kexin Pei , Gail Kaiser , Wei Le , Baishakhi Ray

Source code similarity are increasingly used in application development to identify clones, isolate bugs, and find copy-rights violations. Similar code fragments can be very problematic due to the fact that errors in the original code must…

Software Engineering · Computer Science 2019-07-30 F Alomari , M Harbi
‹ Prev 1 4 5 6 7 8 10 Next ›