Mi sono spesso chiesto quali sono le implicazioni dell'accorciamento del codice assegnando variabili temporanee con nomi più brevi agli accessi ai dati con nomi lunghi. È meglio illustrato da un esempio (in Ruby, ma non che importi):
Questo lungo codice è brutto, IMO:
# Trim the description to MAX_LENGTH characters followed by "..."
# if the description is MAX_LENGTH characters or longer
def shorthand_description
return (some_object.nested_hash.description.length >= MAX_LENGTH)
? "#{some_object.nested_hash.description[0..MAX_LENGTH]}..."
: some_object.nested_hash.description
end
Questo sembra essere molto più leggibile:
def shorthand_description
desc = some_object.nested_hash.description
return (desc.length >= MAX_LENGTH)
? "#{desc[0..MAX_LENGTH]}..."
: desc
end
Personalmente ho quasi sempre delle variabili di stenografia se la catena di accesso lunga è più di 20 caratteri e viene ripetuta. Sta creando una variabile solo per rendere il codice più leggibile accettabile? Dipende dalle linee guida di stile per la lingua o è un concetto indipendente dalla lingua?