Sono stato in una discussione al lavoro sulla scrittura di codice leggibile. Si trattava principalmente di nomi di variabili e metodi e l'idea che i commenti non hanno valore se il codice è sufficientemente leggibile. Non vorrei sottolineare solo su nessun linguaggio di programmazione specifico.
1.) Nomi descrittivi vs variabili e metodi descrittivi I nomi descrittivi delle variabili sono più facili da comprendere per i principianti, mentre quelli minimalistici semplificano la navigazione nel codice (Nessuno schermo ingombra di nomi lunghi di cammello) Diciamo che ho un metodo:
- convertOneFormatToAnotherFormat () vs oneFormatToAnother ()
- checkIfTypeIsBoolean () vs isBoolean
- rerenderNavigationInNavbar vs refreshNavbar ()
Che cosa diresti che una buona regola è?
2.) Uso delle abbreviazioni per la denominazione delle variabili e l'utilizzo di nomi completi ogni volta Le abbreviazioni rendono il tuo codice meno ingombrante, mentre i nomi completi rendono più facile la comprensione. Il punto dell'argomento era che ho detto che alcune abbreviazioni sono meglio di fullNames. Consente di controllare gli esempi stupidi:
- JSON vs javascriptObjectNotation
- RGB vs redGreenBlue
- VB vs visualBasic
Delle abbreviazioni di couse sono migliori.
- conv vs convert
- dev vs sviluppatore
- usr vs utente
I nomi completi sono sicuramente meglio qui. Vorrei chiedere obiezioni qui per alcuni esempi poco chiari:
- kvp vs keyValuePair
- ddl vs dropDownList
Cosa sceglieresti qui? Inoltre, come scriveresti una regola per nominare abbreviazioni?
3.) Commenti non necessari se il codice è sufficientemente leggibile C'è uno standard che dice che la documentazione e i commenti non sono necessari se il codice è sufficientemente leggibile. Eppure ho scoperto che ho fatto delle scelte specifiche nel mio codice e volevo spiegare le mie scelte nei commenti sopra.
- Vuoi dire che i commenti nel codice che spiegano la logica sono necessari?
- Diresti che i commenti che segmentizzano solo il codice sono necessari?
- Vuoi documentare l'HTML con i commenti? Orità (tag adolescente, μ tag iniziali (,)
4.) Nome breve nella funzione standalone breve vs nomi significativi Diciamo che ho un metodo che trova restituisce un numero e lo moltiplica per 2 Va bene per:
multiplyByTwo(x):
a = x*2
return a
o è molto meglio:
multiplyByTwo(factor):
result = factor*2
return result
So che il modo migliore è essere intelligenti e utilizzare quello che informa il lettore e rende il suo lavoro il più semplice possibile è il migliore, ma per i team questo è difficile da fare poiché ognuno ha il suo stile.
Grazie per la risposta