You can rename variables, extract new functions or classes, ensure the code is styled and formatted correctly - anything to make the code easier to read, understand or maintain.
But, the key thing is the code still needs to work.
You don't want to break working code and introduce a regression, even if it is messy or difficult to read.
The best way I know to approach this is by having automated tests covering this code, and ensure they are working and passing before starting to refactor.
Then you can run the tests again and ensure they still pass.
If they pass, the code still works and the refactoring was successful.
If not, the code is broken and you need to revert the changes and start again.
- Oliver
Was this interesting?
About me
I'm an Acquia-certified Drupal Triple Expert with 17 years of experience, an open-source software maintainer and Drupal core contributor, public speaker, live streamer, and host of the Beyond Blocks podcast.