Code cleanup refers to the act of writing code so that it cleans up leftover and other unwanted materials from memory and the filesystem. It is sometimes treated as a synonym of code refactoring, which involves making the source code itself easier to understand, maintain, and modify. [1]
In C++, code cleanup involves deallocating previously allocated dynamic memory.
This is usually done with the C++ delete and delete[] operations. [2]
intx=15;int*mySequence=newint[x];for(inti=0;i<x;i++){mySequence[i]=0;}mySequence[0]=-127;delete[]mySequence;In PHP there is the unset function. [3]
$foo=123;unset($foo);In Python 3, explicit deletion of variables requires the del keyword. [4]
x=15my_sequence=[0foruseless_variableinrange(x)]my_sequence[0]=-127delmy_sequenceIn JavaScript, objects are garbage collected if they are unreachable from the global object. [5] One way to make an object unreachable is to overwrite the variables or properties that reference it.
letx={};// The variable x is declared and set to an objectx=null;// x is overwritten and the object becomes unreachableIn 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. [6]
intx=15;int[]my_sequence=newint[x];for(inti=0;i<x;i++){my_sequence[i]=0;}my_sequence[0]=-127;my_sequence=null;Code cleanup can also refer to the removal of all source code comments 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. [7] 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. [8]
Another technical term sometimes called "code cleanup" is loop cleanup.
/* 'The i++ part is the cleanup for the for loop.' */fori=0;i<100;i++printiendimporttypelist=[10,20,30,40,50]/* 'Even in a for each loop, code cleanup with an incremented variable is still needed.' */i=0foreachelementoflistlist[i]^=2//'Squares the element.'printstring(element)+" is now... "+string(list[i])i++end