Cercando strumenti per la rilevazione automatica di errori nel codice sorgente, sono incappato in questo interessante progetto, Checkstyle, che si occupa di verificare che il testo scritto sia conforme ad un certo insieme di regole formali, proponendo 2 default già adottati da altri (questi insiemi di default si chiamano “google”, “sun”).
Non è esattamente quello che stavo cercando, visto che la mia ricerca era orientata verso strumenti analoghi a FindBugs, ma sono comunque stato contento di averlo trovato.
Checkstyle è un progetto a sè stante, di cui esistono plugin per i vari IDE: io ho provato Eclipse-CheckStyle.

La standardizzazione dello stile del codice sorgente non andrebbe sottovalutata: anche senza essere parte di un gruppo numeroso, si capisce che essa migliora principalmente i seguenti aspetti.
Leggibilità del codice: in un gruppo, se il proprio codice è più facilmente leggibile è anche più facilmente comprensibile per gli altri.
Manutenibilità del software: revisionare codice altrui o anche rimettere mano dopo del tempo al proprio codice sono attività che hanno varie difficoltà intrinseche (ad esempio: dov’è il bug? cosa fa questo codice (non documentato)? eccetera), per cui è bene evitare di aggiungerne altre (tipo: perché alcune variabili sono scritte come costanti?)
Efficienza: inoltre un programmatore che è abituato a scrivere in maniera corretta, utilizzerà con più efficienza gli esempi di buon codice trovati nei libri o su internet.

I default proposti dal plugin Checkstyle non rappresentano la verità assoluta, ma possono essere usati come base per la creazione delle regole che rappresentano lo standard interno del gruppo di lavoro. L’editor delle regole è un po’ macchinoso e poco user friendly, ma in pochi passi è possibile aumentare la lunghezza massima delle righe o permettere l’utilizzo del carattere di tabulazione per l’indentazione.
Checkstyle non effettua il controllo in tempo reale (cioè durante la digitazione), ma a richiesta dell’utente o ad ogni rebuild del progetto, evidenziando le righe non conformi con un bel giallo canarino impossibile da ignorare.

In definitiva, Checkstyle permette di migliorare l’efficienza delle attività di scrittura e revisione del codice sorgente… come pure la sua estetica (ma questa è un’opinione personale!).

Annunci