diasurgical/DevilutionX

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

Aperta

#1996 aperta il 17 mag 2021

 (1 commento) (0 reazioni) (0 assegnatari)C++ (743 fork)batch import
good first issuehelp wanted

Metriche repository

Star
 (7255 stelle)
Metriche merge PR
 (Merge medio 2g 12h) (15 PR mergiate in 30 g)

Descrizione

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:

Guida contributor