Per diversi motivi durante lo sviluppo, a volte commento il codice. Dato che sono caotico e talvolta di fretta, alcuni di questi lo rendono al controllo del codice sorgente.
Uso anche commenti per chiarire blocchi di codice.
Ad esempio:
MyClass MyFunction()
{
(...)
// return null; // TODO: dummy for now
return obj;
}
Anche se "funziona" e molte persone lo fanno in questo modo, mi infastidisce il fatto che non è possibile distinguere automaticamente il codice commentato dai commenti "reali" che chiariscono il codice:
- aggiunge rumore durante il tentativo di leggere il codice
- non puoi cercare il codice commentato per esempio un hook on-commit nel controllo del codice sorgente.
Alcune lingue supportano più stili di commento a riga singola - per esempio in PHP puoi usare //
o #
per un commento a riga singola - e gli sviluppatori possono concordare l'utilizzo di uno di questi per il codice commentato:
# return null; // TODO: dummy for now
return obj;
Altre lingue, come C # che uso oggi, hanno uno stile per i commenti a riga singola (giusto? vorrei sbagliarmi). Ho anche visto esempi di codice "commenting-out" usando le direttive del compilatore, che è ottimo per grandi blocchi di codice, ma un po 'eccessivo per le singole linee poiché sono necessarie due nuove linee per la direttiva:
#if compile_commented_out
return null; // TODO: dummy for now
#endif
return obj;
Quindi, dato che il codice di commento si verifica in ogni (?) lingua, il "codice disabilitato" non dovrebbe avere la propria sintassi nelle specifiche del linguaggio? I pro (separazione dei commenti / codice disabilitato, editor / controllo del codice sorgente che agisce su di essi) sono abbastanza buoni e gli aspetti negativi ("non dovrebbero fare commenti in ogni caso", non una parte funzionale di un linguaggio, potenziale ritardo dell'IDE (grazie Thomas )) vale la pena sacrificare?
Modifica
Mi rendo conto che l'esempio che ho usato è sciocco; il codice fittizio potrebbe essere rimosso facilmente in quanto sostituito dal codice effettivo.