Uno snippet (letteralmente tradotto “ritaglio“) è una porzione di codice sorgente che viene reso pubblico, spesso tramite freeware, in modo che sia disponibile a chiunque. Lo scopo è solitamente didattico: una singola funzione, un template, una raccolta di funzioni correlate o, a volte, anche un intero programma vengono portati come esempio per offrire supporto agli sviluppatori.
Gli snippets nascono infatti per offrire una soluzione standard e già sperimentata a problemi comuni, oppure per illustrare “trucchi” di implementazione,
Ma è tutto un copia e incolla?
Ma se gli sviluppatori duplicano il codice altrui e lo usano nel proprio per risolvere un problema analogo, significa che impiegare gli snippets è una forma di programmazione copia e incolla?
Non proprio: non si tratta infatti di copiare senza comprendere il significato di ciò che si sta facendo. Bensì di adottare soluzioni sperimentate e sicure, che garantiscono performance ottimali. Il vantaggio di avere a disposizione repository o librerie di snippets è quello di velocizzare i tempi di sviluppo ed evitare di chiedere sempre al web la soluzione a problemi ricorrenti.
Un vero e proprio catalogo di codice
La gestione degli snippets è ormai diventata una funzionalità standard, fornita dalla maggior parte degli editor di testo o di codice popolari tra i developer. Molti di questi applicativi permettono infatti di salvare come macro gli snippets creati dall’utente, perché siano riutilizzabili all’occorrenza. Spesso i developer utilizzano questa funzionalità perché il contenuto degli snippet varia solo leggermente (o per niente) ogni volta inseriti.
Come il sistema operativo consente la gestione di file separati, gli editor spesso forniscono un meccanismo per gestire un vero e proprio catalogo di snippets. Queste funzionalità includono operazioni come la visualizzazione, l’aggiunta, la modifica, l’eliminazione, l’ordinamento, il filtraggio, il raggruppamento, la ridenominazione e l’archiviazione di frammenti in un repository, catalogo o database. Alcuni editor permettono di creare scorciatoie che richiamano gli snippets, per generare prototipi di funzioni e strutture di controllo variabili in base al modello iniziale.
Sempre disponibili e condivisi
In Zelando, durante la programmazione delle piattaforme e servizi aziendali, l’utilizzo di snippets di codice è molto frequente. Grazie alla struttura modulare dei codici sorgente è possibile integrare snippets già esistenti e velocizzare esponenzialmente il tempo di sviluppo.
Capita spesso, infatti, di incappare in operazioni di gestione ordinaria dei database o terminali remoti con la necessità di eseguire comandi di routine per impostare la macchina o scaricare i codici necessari per lavorare. Gli snippets di codice dedicati alla gestione e al setup dei progetti sono quindi disponibili e condivisi internamente per rendere il processo di avvio lavori meno “doloroso”.
Cosa ci portiamo a casa?
Poter fare affidamento su soluzioni realizzate dai propri colleghi aumenta la fiducia nel team ed è un modo efficace per garantire formazione continua. Non è raro, infatti, che tra le scrivanie si trovino modi per efficientare il codice e ridurre i tempi di esecuzione. Ciascuno impara dall’altro e migliora le proprie conoscenze, in linea con il principio di Ivano, il nostro SQL Server Developer: