Code cleanup
Code cleanup refers to the act of writing so that it cleans up leftover and other unwanted materials from memory and the filesystem. It is sometimes treated as a synonym of refactoring code, which involves making the source code itself easier to understand, maintain, and modify.[1]
Examples
C++
In C++, code cleanup involves deallocating previously allocated dynamic memory.
This is usually done with the C++ delete
and delete[]
operations.[2]
int x = 15;
int* mySequence = new int[x];
for (int i = 0; i < x; i++) {
mySequence[i] = 0;
}
mySequence[0] = -127;
delete[] mySequence;
Python
In Python 3, explicit deletion of variables requires the del
keyword.[3]
x = 15
my_sequence = [0 for useless_variable in range(x)]
my_sequence[0] = -127
del my_sequence
JavaScript
In JavaScript, objects are garbage collected if they are unreachable from the global object.[4] One way to make an object unreachable is to overwrite the variables or properties that reference it.
let x = {}; // The variable x is declared and set to an object
x = null; // x is overwritten and the object becomes unreachable
Java
In Java, variables cannot be truly deleted. The most that can be done is to set the variable to null
, which works with any Java object, including arrays.[5]
int x = 15;
int[] my_sequence = new int[x];
for (int i = 0; i < x; i++) {
my_sequence[i] = 0;
}
my_sequence[0] = -127;
my_sequence = null;
Other meanings
Code cleanup can also refer to the removal of all computer programming from source code, or the act of removing temporary files after a program has finished executing.
For instance, in a web browser such as Chrome browser or Maxthon, code must be written in order to clean up files such as cookies and storage.[6] The deletion of temporary files is similar to the deletion of unneeded lists and arrays of data. However, a file is treated as a permanent way to store a resizable list of bytes, and can also be removed from existence.[7]
Loop cleanup
Another technical term sometimes called "code cleanup" is loop cleanup.
/* 'The i++ part is the cleanup for the for loop.' */
for i = 0; i < 100; i++
print i
end
import type
list = [10, 20, 30, 40, 50]
/* 'Even in a for each loop, code cleanup with an incremented variable is still needed.' */
i = 0
for each element of list
list[i] ^= 2 // 'Squares the element.'
print string(element) + " is now... " + string(list[i])
i++
end
References
- ^ "Microsoft Talks Code Cleanup". 15 December 2015.
- ^ "Code cleanup in C++".
- ^ "Deletion of Variables in Python".
- ^ "Memory Management - Mark-and-sweep algorithm".
- ^ "Null in Java: The Pointer to Address 0".
- ^ "DOM Storage - MDN". 26 July 2024.
- ^ "Erasing Cookies and Temporary Files in Google Chrome - Google.com".