Am observat ca denumirile functiilor devin “contracte” la proiectele de lunga durata, ce conventii folositi pt. denumirea variabilelor / functiilor?
Eu le cam denumesc in limbaj natural si explicit (cine esti si ce faci). Mai ales ca am mai putine comentarii decat as vrea / e necesar.
Cum zice și Uncle Bob în Clean Code (este un întreg capitol pe tema asta):
- Use Intention-Revealing Names
- Avoid Disinformation
- Make Meaningful Distinctions
- etc
Say what you mean. Mean what you say.
Folosesc prescurtări doar acolo unde sunt absolut sigur că nu e loc de ambiguități (e.g. într-un loop for
am doar i
, j
sau k
, care sunt indecși comun acceptați; args
este o prescurtare din care oricine îi înțelege destinația șamd).
Dacă am nevoie de documentație pentru a explica o variabilă sau, mai grav, o funcție, înseamnă că am făcut ceva greșit.
De asemenea, dacă eu încep proiectul, sub nici o formă nu folosesc altă limbă în afară de engleza în cod, indiferent că am client român (nu a mai fost cazul de mult), englez sau chinez. Mi s-a întâmplat de câteva ori să moștenesc un proiect în italiană sau în franceză și nu e foarte distractiv să faci debug cu google translate…
a fist o vreme, acum 15 ani, cand phpul era asa inocent ca trebuia sa folosim Hungarian notation ca sa disciplinam colegii sa nu mai puna stringuri in “iCounter”; inca mai cred ca e o metoda utila pt cei mai juniori, pana invata
timpul a trecut si am ajuns tot la vorbele lui uncle Bob; meaningful names