Il vantaggio dell'utilizzo delle schede per il rientro è che le persone possono configurare il proprio editor in modo da utilizzare la larghezza delle schede con le quali si trovano a proprio agio. L'unico argomento contro questo sembra essere che le persone non vogliono che il loro codice abbia un aspetto diverso in base alle impostazioni dell'editor. Tuttavia, poiché il codice viene in definitiva scritto per essere facile da leggere in seguito, sembra molto più vantaggioso consentire al lettore di impostare la larghezza sul valore preferito.
D'altro canto, poiché le schede hanno una larghezza diversa in ambienti diversi, si avranno problemi di allineamento quando lo si usa per formattare istruzioni multilinea e altre cose.
Un esempio di questo è:
print(name + " is now " + age +
"years old!")
Ma in questo caso la spaziatura davanti alla seconda linea ha uno scopo molto diverso da quello usato per indentare i blocchi. Poiché lo scopo qui è quello di allineare la seconda riga con i caratteri print(
, la soluzione migliore qui è usare gli spazi, poiché sono garantiti per essere larghi come ogni carattere nella riga sopra.
Per riassumere, cosa c'è di sbagliato con
... utilizzando le schede per il rientro in cui tutti possono impostare la propria larghezza preferita
... usando gli spazi per allineare il codice multi-linea dove la larghezza fa importa
Poiché la maggior parte di queste domande sono in genere solo schede vs spazi, spero di ottenere ulteriori informazioni qui sui vantaggi / svantaggi dell'utilizzo di ciascuno per i propri casi d'uso separati.