Durante la revisione del codice, di solito cerco di formulare raccomandazioni specifiche su come risolvere i problemi. Ma a causa del tempo limitato che si può spendere per la revisione, questo non sempre funziona bene. In questi casi lo trovo più efficiente se lo sviluppatore si presenta da solo con una soluzione.
Oggi ho rivisto alcuni codici e ho scoperto che una classe non era ovviamente ben progettata. Aveva un numero di attributi facoltativi che venivano assegnati solo per determinati oggetti e lasciati in bianco agli altri. Il modo standard per risolvere ciò sarebbe dividere la classe e utilizzare l'ereditarietà. Tuttavia in questo caso specifico questa soluzione sembrava complicare eccessivamente le cose. Non ero coinvolto nello sviluppo di questo software e non ho familiarità con tutti i moduli. Pertanto non mi sentivo abbastanza informato per prendere una decisione specifica.
Un altro caso tipico che ho sperimentato molte volte è che trovo una funzione, una classe o una variabile ovviamente priva di significato o addirittura fuorviante, ma non sono in grado di trovare personalmente un buon nome.
Quindi, in generale, come revisore, va bene dire che "questo codice è imperfetto perché ..., lo fa in modo diverso" oppure devi trovare una soluzione specifica?