devilutionX icon indicating copy to clipboard operation
devilutionX copied to clipboard

Refactor devilution.DefaultClass::CheckInvPaste(int, int, int)

Open AJenbo opened this issue 4 years ago • 1 comments

I've selected devilution.DefaultClass::CheckInvPaste(int, int, int) for refactoring, which is a unit of 362 lines of code and 135 branch points. Addressing this will make our codebase more maintainable and improve Better Code Hub's Write Simple Units of Code guideline rating! 👍

Here's the gist of this guideline:

  • Definition 📖 Limit the number of branch points (if, for, while, etc.) per unit to 4.
  • Why❓ Keeping the number of branch points low makes units easier to modify and test.
  • How 🔧 Split complex units with a high number of branch points into smaller and simpler ones. This one in particular has a big switch that could probably be split out in to sub-functions.

You can find more info about this guideline in Building Maintainable Software. 📖


Good luck and happy coding! :shipit: :sparkles: :100:

AJenbo avatar May 17 '21 00:05 AJenbo

Created #6984, need some initial feedback + figure out how to run the failing test locally so I can debug it 😄

matheusgomes28 avatar Feb 23 '24 22:02 matheusgomes28