Logo Tom's Hardware
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Tom's Hardware Logo
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Forum
  • Sconti & Coupon
Offerte & Coupon
Accedi a Xenforo
Immagine di La "greppability" tra le misure più importanti della qualità del codice
Business
Immagine di L’UE spinge sul 5G, 106 milioni di euro per nuove reti L’UE spinge sul 5G, 106 milioni di euro per nuove reti...
Immagine di Nel 2027 potrete comprarvi un Tesla Optimus Nel 2027 potrete comprarvi un Tesla Optimus...

La "greppability" tra le misure più importanti della qualità del codice

La "greppability" è una misura molto utile che determina la qualità del codice e aiuta gli sviluppatori a manutenere la codebase.

Avatar di Marina Londei

a cura di Marina Londei

Editor @Tom's Hardware Italia

Pubblicato il 04/09/2024 alle 16:00
Quando acquisti tramite i link sul nostro sito, potremmo guadagnare una commissione di affiliazione. Scopri di più

Affinché una codebase sia facilmente manutenibile, il codice deve essere il più possibile di qualità. Un buon codice è leggibile, ben documentato, poco complesso, portabile, riusabile e testabile; a questi indicatori poi si può aggiungere la "greppability", ovvero la facilità con cui è possibile cercare nomi di variabili, funzioni  o altri elementi nella codebase.

Immagine id 33138

 

Il nome dell'indicatore deriva dal comando "grep", filtro usato per cercare occorrenze di stringhe o espressioni regolari nei file di sistema. Quando si ha a che fare con del codice su cui non si ha mai lavorato oppure che non si analizza da molto tempo, è fondamentale riuscire a trovare facilmente nomi di funzioni e classi, messaggi d'errore o variabili nel caso ci sia una modifica da fare, sia per la correzione di un bug che per un refactoring.

"Se non riesco a trovare ciò che cerco, nel caso migliore è frustrante, e nel caso peggiore si arriva a situazioni pericoloso dove ipotizzo che una cosa non serve più perché non trovo riferimenti nella codebase" spiega lo sviluppatore Moriz Büsing.

 

Nel suo blog Büsing condivide una serie di indicazioni per rendere il codice "greppable" e migliorarne la qualità complessiva; una di queste consiste nell'evitare di creare identificatori in maniera dinamica.

Anche se questa pratica rende il codice più pulito e asciutto, la manutenibilità cala perché gli sviluppatori che si occuperanno del progetto in futuro faranno fatica a cercare variabili e campi con il loro nome. 

Büsing consiglia anche di scegliere una rappresentazione "flat" per oggetti con proprietà innestate, in modo trovare facilmente i riferimenti alle chiavi a cui si sta accedendo. 

Se, per esempio, si ha una struttura del genere:

{
    "auth": {
        "login": {
            "title": "Login",
            "emailLabel": "Email",
            "passwordLabel": "Password",
        },
        "register":
            "title": "Register",
            "emailLabel": "Email",
            "passwordLabel": "Password",
        }
    }
}

è preferibile renderla in maniera flat:

{
    "auth.login.title": "Login",
    "auth.login.emailLabel": "Email",
    "auth.login.passwordLabel": "Password",
    "auth.register.title": "Login",
    "auth.register.emailLabel": "Email",
    "auth.register.passwordLabel": "Password",
}

Immagine id 31477

Infine, un altro consiglio che dà Büsing è di non rinominare i campi che si riferiscono a uno stesso oggetto, per esempio quando si convertono gli identificatori snake_case in camelCase. Ciò complica la ricerca di un nome e occorre cercare due stringhe al posto di una.

Una codebase di qualità non deve essere comprensibile solo per chi la scrive, ma soprattutto per chi dovrà leggerla e modificarla senza avere la minima conoscenza del codice; in tal senso, è necessario applicare buone pratiche per rendere la codebase navigabile, facilitando la manutenzione. 

Le notizie più lette

#1
NVIDIA cambia strategia, addio ai prezzi consigliati

Hardware

NVIDIA cambia strategia, addio ai prezzi consigliati

#2
I fisici rivedono una legge fondamentale della termodinamica

Scienze

I fisici rivedono una legge fondamentale della termodinamica

#3
Una vitamina comune può influenzare la regolarità intestinale
1

Scienze

Una vitamina comune può influenzare la regolarità intestinale

#4
Intel ha giocato d’anticipo sulla memoria di Lunar Lake

Hardware

Intel ha giocato d’anticipo sulla memoria di Lunar Lake

#5
Nel 2027 potrete comprarvi un Tesla Optimus
6

Business

Nel 2027 potrete comprarvi un Tesla Optimus

👋 Partecipa alla discussione!

0 Commenti

⚠️ Stai commentando come Ospite . Vuoi accedere?

Invia

Per commentare come utente ospite, clicca cerchi

Cliccati: 0 /

Reset

Questa funzionalità è attualmente in beta, se trovi qualche errore segnalacelo.

Segui questa discussione

Ti potrebbe interessare anche

Nel 2027 potrete comprarvi un Tesla Optimus

Business

Nel 2027 potrete comprarvi un Tesla Optimus

Di Marco Pedrani
L’UE spinge sul 5G, 106 milioni di euro per nuove reti

Business

L’UE spinge sul 5G, 106 milioni di euro per nuove reti

Di Antonello Buzzi
IA agentica: 6 tendenze per il 2026

Business

IA agentica: 6 tendenze per il 2026

Di Antonino Caffo
Il prossimo commesso? Un robot guidato da un'agente IA

Business

Il prossimo commesso? Un robot guidato da un'agente IA

Di Marco Pedrani
Prezzo fisso luce e gas per il tuo business: con Sorgenia è possibile

Business

Prezzo fisso luce e gas per il tuo business: con Sorgenia è possibile

Di Dario De Vita
Footer
Tom's Hardware Logo

 
Contatti
  • Contattaci
  • Feed RSS
Legale
  • Chi siamo
  • Privacy
  • Cookie
  • Affiliazione Commerciale
Altri link
  • Forum
Il Network 3Labs Network Logo
  • Tom's Hardware
  • SpazioGames
  • CulturaPop
  • Data4Biz
  • TechRadar
  • SosHomeGarden
  • Aibay

Tom's Hardware - Testata giornalistica associata all'USPI Unione Stampa Periodica Italiana, registrata presso il Tribunale di Milano, nr. 285 del 9/9/2013 - Direttore: Andrea Ferrario

3LABS S.R.L. • Via Pietro Paleocapa 1 - Milano (MI) 20121
CF/P.IVA: 04146420965 - REA: MI - 1729249 - Capitale Sociale: 10.000 euro

© 2026 3Labs Srl. Tutti i diritti riservati.