Come scrivere codice pulito? Ecco alcuni tool
Uno dei dilemmi più grandi dei programmatori è riuscire a scrivere codice pulito. Quando si inizia un progetto, ci si butta a capofitto e spesso ci si dimentica di seguire le best practice di scrittura. Non parliamo poi di quando ci sono scadenze imminenti: in questi casi, la pulizia del codice è l’ultimo dei nostri pensieri.
Scrivere codice pulito, però, è fondamentale, sia in vista di una nostra manutenzione futura che, soprattutto, quella fatta da altri. Produrre codice chiaro aiuta a capire più velocemente lo scopo di ciò che si è fatto, e permette di individuare più facilmente eventuali errori. Vogliamo quindi presentarvi alcuni tool che potrebbero facilitarvi le cose.
Che cosa significa “codice pulito” ?
Mantenere la pulizia del codice implica diversi accorgimenti da usare. Una prima cosa, fondamentale, è che il codice sia elegante. Ciò significa che non deve essere ostico da leggere, in termini prettamente visivi: questo implica, ad esempio, una corretta indentazione per evidenziare le diverse parti e le diverse logiche. Inoltre, i nomi delle variabili, classi, funzioni, metodi devono essere significanti ed espressivi, in modo che un lettore non debba addentrarsi nel codice per capire il significato di ogni istruzione.
I commenti dovrebbero essere ridotti il più possibile. Se funzioni, classi e variabili sono state correttamente nominate, non sarà necessario commentare ogni dichiarazione. Un solo commento utile potrà essere inserito per spiegare la logica generale di, ad esempio, una classe oppure di una funzione particolarmente complessa.
Un altro aspetto importante riguarda l’eliminazione di parti duplicate. La ridondanza rende il codice confusionario; meglio invece racchiudere una logica utilizzata ripetutamente in una funzione da richiamare al bisogno.
Alcuni tool in nostro aiuto
Prettier
Questo tool permette di formattare il codice in maniera specifica e automatica. Modificando il file di configurazione, è possibile specificare delle regole di formattazione che verranno applicate al nostro codice quando lo riterremo necessario.
Prettier è semplice da usare e molto comodo per pulire anche il codice già esistente. Utilizzando questo tool, non ci sarà più bisogno di sprecare tempo ed energie per aggiustare l’aspetto di ciò che abbiamo scritto.
ESLint
Un “linter” è un tipo di analisi statica che permette di trovare dei pattern problematici o del codice che non aderisce a determinate linee guida di stile. Ne esistono diversi, più adatti a un linguaggio piuttosto che a un altro; ESLint viene utilizzato per Javascript. Essendo questo un linguaggio loosely-typed e dinamico, il tool è molto comodo, in quanto non è necessario eseguire il codice per utilizzarlo.
Husky
Questo tool permette al programmatore di eseguire i Git hooks. Questi sono sostanzialmente degli script che Git esegue prima o dopo un determinato evento, quali ad esempio commit o push. Ciò significa che possono essere eseguite azioni custom subito prima di effettuare un’operazione sul repository, ad esempio eseguire dei test o formattare il codice.
Lint-staged
Come il nome suggerisce, questo tool permette di effettuare linting su quei file che sono nella fase di staging, subito prima di un push. In questo modo si evita di caricare file con errori o che non seguono il corretto stile del codice. Un’ottima strategia potrebbe essere quella di utilizzare Husky e Lint-staged in combinazione, configurando tramite il primo tool l’esecuzione di uno script lint-staged.
L’importanza del codice pulito
In un mondo come il nostro, dove lo scambio di progetti e il passaggio di consegna sono frequenti, è indispensabile agire con la consapevolezza che non saremo gli unici che avremo a che fare con ciò che abbiamo scritto. Scrivere codice ordinato e preoccuparsi sempre della chiarezza di ciò che si produce è stancante, ma è fondamentale. I tool che abbiamo presentato offrono un aiuto concreto per facilitare questo processo.
Ne conoscete altri da consigliarci? Scriveteci e condivideteli con tutti noi colleghi programmatori!
Tool consigliati da freeCodeCamp