Cos'è il codice boilerplate?

Il codice boilerplate è un testo in linguaggio informatico che è possibile riutilizzare con modifiche minime o nulle in diversi contesti. Il termine deriva dalla gestione dei documenti, in cui si riutilizzano modelli di documento o boilerplate con modifiche minime per diverse situazioni. Ad esempio, gli avvocati utilizzano contratti standard che possono personalizzare rapidamente per i clienti di diversi settori. Allo stesso modo, gli sviluppatori di software riutilizzano il codice boilerplate con piccole modifiche in vari moduli del programma. Con alcuni linguaggi di programmazione moderni, è possibile ridurre al minimo il codice boilerplate racchiudendolo in funzioni, classi e altre strutture di programmazione.

Quali sono i vantaggi del codice boilerplate?

I codici boilerplate vanno da semplici definizioni a funzioni software che eseguono attività specifiche. Quando sviluppano applicazioni, i programmatori scrivono codici che potrebbero essere ripetuti inutilmente. Gli sviluppatori utilizzano codici standard per programmare in modo più efficiente, garantendo al contempo la qualità del software.

Di seguito sono riportati diversi vantaggi del codice boilerplate. Possono essere di grande aiuto se usati in modo appropriato.

Consente la riutilizzabilità del codice

I codici boilerplate sono fondamentali per la programmazione riutilizzabile, in cui gli sviluppatori possono applicare codici scritti in precedenza nei moduli successivi che creano. Durante la programmazione, gli sviluppatori possono identificare codice apparentemente ripetitivo e trasformarlo in codice standard. Invece di scrivere l'intero codice sorgente da zero, copiano e incollano i codici standard quando e quando necessario. 

Fornisce soluzioni applicabili

Il codice boilerplate fornisce un riferimento per gli sviluppatori quando scrivono funzioni software con cui non hanno familiarità. Convenzionalmente, gli sviluppatori dovrebbero scrivere l'intero codice da zero e verificare se funziona. Non è più così.

Ad esempio, è possibile utilizzare boilerplate per le pagine Web quando si avvia un progetto di sviluppo Web. Non è necessario ricreare la struttura HTML di base richiesta da qualsiasi pagina Web.

Consente la condivisione delle conoscenze

Gli sviluppatori migliorano continuamente i propri codici eseguendo test software e controlli di qualità. Possono usare boilerplate per consolidare questi miglioramenti.

Ad esempio, ogni volta che un programmatore scopre bug nei codici boilerplate, può apportare miglioramenti e documentare le modifiche nel boilerplate. In questo modo, ogni programmatore che applica il codice riutilizzabile trarrà vantaggio dall'ottimizzazione. 

Migliora la qualità del codice

I codici boilerplate riducono il rischio di errori di codifica e migliorano la qualità del software. Quando si utilizzano codici standard, si abilitano le funzionalità del software con codici che sono stati accuratamente testati. È necessario scrivere solo poche righe di codice per aggiungere funzionalità personalizzate o secondarie al software.

Inoltre, l'utilizzo di un boilerplate di programmazione aiuta i team di software a mantenere uno standard di codifica adeguato e stili di linguaggio di programmazione coerenti in tutto il codice sorgente.  

Riduce i tempi di codifica

La programmazione boilerplate semplifica il processo di sviluppo del software eliminando la necessità di ripetere i codici inutilmente. Con codici riutilizzabili, anche gli sviluppatori alle prime armi possono avviare progetti simili rapidamente senza una curva di apprendimento ripida. Possono inserire e utilizzare boilerplate con modifiche minime o nulle per aggiungere funzioni software che in genere richiedono più tempo per essere sviluppate. 

Quali sono alcuni esempi di codice boilerplate?

Boilerplate si riferisce a sezioni di codice che è possibile utilizzare per migliorare l'efficienza e la qualità della codifica in molti linguaggi e applicazioni di programmazione. Di seguito sono riportati diversi esempi.

Dichiarazione di classe

Boilerplate è comune nella programmazione orientata agli oggetti (OOP) e nei linguaggi ibridi che rappresentano oggetti con classi.

Considera il seguente frammento di codice. Sia getName che setName sono codici boilerplate che gli sviluppatori possono richiamare in più dichiarazioni di classe Customer senza riscrivere i codici:

public class Customer{

private String name; 

   

  public String getName() {

     return name;

  }

  public void setName(String name) {

     this.name = name;

  }

   }

Incapsulamento delle funzioni

È inoltre possibile utilizzare un boilerplate per incapsulare una funzione software comunemente ripetuta in un'applicazione.

Ad esempio, il frammento seguente mostra un codice riutilizzabile che gli sviluppatori possono chiamare per aprire e leggere un file. Gli sviluppatori possono copiare e incollare l'intero codice e includere i propri codici per elaborare le informazioni estratte:

try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {

    String text;

    while (Objects.nonNull(text = reader.readLine())) {

      // inserisci il codice per elaborare le info di lettura

    

    }

} catch (IOException e) {

  String message = String.format(“read file(%s) exception”, fileName);

log.error(message, e);

  throw new ExampleException(message, e);

}

Modello di pagina Web

Gli sviluppatori Web utilizzano boilerplate come modello per creare una pagina Web. In genere, il boilerplate include meta dichiarazioni, configurazioni predefinite e tag che possono essere modificati.

Il seguente codice standard è un esempio di ciò che gli sviluppatori potrebbero utilizzare per creare una pagina Web vuota:

<!DOCTYPE html>

<html lang="en">

 <head>

   <meta charset="UTF-8">

     <meta name="viewport" content="width=device-width, initial-scale=1.0">

     <meta http-equiv="X-UA-Compatible" content="ie=edge">

     <title>Webpage Title</title>

     <link rel="stylesheet" href="style.css">

 </head>

 <body>

<script src="index.js"></script>

 </body>

</html>

Gestione di database

La maggior parte delle applicazioni archivia ed elabora i dati nei database. Gli sviluppatori utilizzano un boilerplate simile al seguente frammento per semplificare i codici per le connessioni al database e le query di dati. Possono popolare la struttura di codice standardizzata con funzioni di gestione dei dati personalizzate che possono ripetere in tutta l'applicazione. Ecco un esempio:

public class Database { 

private Connection conn; 

public void connect() { 

// inserisci i codici per la connessione del database

public void disconnect() { 

//inserisci i codici per la disconnessione del database

public ResultSet runQuery(String query) 

//inserisci i codici per eseguire una query

return null; 

}

}

Quando e come deve essere usato il codice boilerplate?

Grazie alla sua versatilità, gli sviluppatori utilizzano boilerplate per vari tipi e dimensioni di progetto. Di seguito vengono descritti alcuni scenari in cui potresti trarre vantaggio dal codice boilerplate.

Scaffolding

Lo scaffolding è quando si utilizza codice standard per situazioni di base che non implicano astrazioni o integrazioni di componenti software complessi.

Nei progetti più piccoli, lo scaffolding fornisce una struttura di base, in modo che gli sviluppatori possano concentrarsi sull'incorporazione di nuove funzionalità e logiche aziendali. Consente agli sviluppatori di utilizzare quasi tutto il codice con poche modifiche per creare software o applicazioni Web.

Condivisione del codice

Alcuni sviluppatori creano e condividono i propri codici standard con la comunità di sviluppo. Rendono disponibile il boilerplate per il download e incoraggiano la discussione per migliorare il codice sottostante.

Nel frattempo, alcune organizzazioni creano le proprie basi per supportare sviluppi su larga scala. Questi codici standard sono più complessi e presentano i seguenti requisiti:

  • Sono costituiti da codici ben documentati, in modo che gli sviluppatori possano riutilizzarli facilmente
  • Aderisci alle pratiche di codifica standard e alla struttura per mantenere la coerenza
  • Fornisci strumenti per configurare, prototipare e testare l'utilizzo di boilerplate nei codici sorgente
  • Includi il supporto dei moduli API per integrazioni di terze parti
  • Ridimensionamento in un ambiente collaborativo

Coerenza del codice

Non ci sono regole rigide su quando creare boilerplate e utilizzarle nei codici. Tuttavia, se scrivi gli stessi codici funzione più volte nell'applicazione, è meglio trasformarli in boilerplate.

Quando si utilizza boilerplate, è possibile replicare una funzione software in modo coerente riducendo al contempo il rischio di commettere errori di codifica. Ecco alcuni esempi:

  • I programmatori usano boilerplate per inserire dichiarazioni di preambolo simili sopra i loro file sorgente.
  • I programmatori alle prime armi utilizzano come esempi boilerplate collaudati sul campo in progetti rispettivi e simili, che successivamente modificano
  • Gli sviluppatori chiamano le funzioni software incapsulate in una classe Java con boilerplate invece di scrivere codici ripetitivi per scopi simili.

Quando non dovresti usare il codice boilerplate?

Sebbene il codice standard aiuti a ottimizzare il processo di sviluppo del software, ci sono situazioni in cui gli approcci alternativi sono migliori.

Boilerplate non dovrebbe sostituire le funzioni

Boilerplate non dovrebbe essere usato al posto delle funzioni software. Se un programmatore deve scrivere molto codice nonostante applichi un boilerplate, allora è meglio scrivere una funzione originale. Allo stesso modo, la creazione di una funzione software è l'opzione migliore se ti trovi a modificare ampiamente la struttura del boilerplate. 

Boilerplate non dovrebbe sostituire i framework

Un framework è una raccolta di componenti software riutilizzabili che rendono più efficiente lo sviluppo di nuove applicazioni. Usa un framework anziché un boilerplate se hai bisogno di una struttura già pronta che comprenda tutti gli stack tecnologici necessari per le esigenze del tuo progetto. Un framework consente di standardizzare interi progetti.

Al contrario, il codice boilerplate è più utile per semplificare le sezioni di codice. Ad esempio, i Web designer possono utilizzare codice standard per fornire semplici funzioni PHP. E possono utilizzare un framework per aggiungere contenuti a un sito Web pronto per la pubblicazione.

Scopri di più sui framework »

Boilerplate non dovrebbe aumentare la complessità del codice

Fai attenzione alla duplicazione del codice quando usi boilerplate per le funzioni software. Troppe ripetizioni comporteranno un ingombro eccessivo del codice.

Ad esempio, si consideri una situazione in cui si utilizzano le stesse copie di codici che effettuano chiamate API a servizi esterni più volte. Invece, è meglio estrarre i duplicati in una nuova chiamata procedurale per migliorare la manutenzione del codice e ridurre le dimensioni dell'applicazione. 

Allo stesso modo, alcuni progetti devono essere più agili nell'adottare i cambiamenti tecnologici. Un codice standard potrebbe non supportare requisiti oltre allo scopo per cui è stato creato. In questi casi, è meglio sviluppare i componenti software da zero o utilizzare i framework disponibili. 

In che modo AWS può supportare i tuoi requisiti di codice standard?

Il cloud ha democratizzato lo sviluppo di applicazioni. Tramite provider come Amazon Web Services (AWS), puoi accedere su richiesta alle risorse dell'infrastruttura. Tuttavia, il processo tradizionale di creazione di applicazioni software richiede ancora agli sviluppatori di dedicare del tempo alla scrittura di sezioni di codice standard. E non sono direttamente correlati ai problemi principali che gli sviluppatori vogliono risolvere.

Anche gli sviluppatori più esperti hanno difficoltà a tenere il passo con più linguaggi di programmazione, framework e librerie software. E devono seguire la sintassi di programmazione corretta e le migliori pratiche di codifica. Di conseguenza, gli sviluppatori possono dedicare molto tempo alla ricerca e alla personalizzazione di frammenti di codice dal Web. 

Amazon CodeWhisperer è un complemento di programmazione basato sull'intelligenza artificiale (IA) che migliora l'efficienza della codifica. È addestrato su miliardi di righe di codice e può generare suggerimenti di codice che vanno da frammenti a funzioni complete in tempo reale. Ed è tutto basato sui tuoi commenti e sul codice esistente.

Con CodeWhisperer, i tuoi sviluppatori possono concentrarsi sull'ambiente di sviluppo integrato (IDE). Possono trarre vantaggio dai consigli contestuali in tempo reale, che sono già personalizzati e pronti all'uso. Con meno distrazioni e consigli pronti all'uso in tempo reale, gli sviluppatori possono completare le attività di codifica più velocemente e aumentare la produttività.

Inizia a svolgere i test unitari su AWS creando un account oggi stesso.

Fasi successive su AWS

Scopri ulteriori risorse correlate al prodotto
Consulta i servizi di strumenti per sviluppatori 
Registrati per creare un account gratuito

Ottieni accesso istantaneo al Piano gratuito di AWS.

Registrati 
Inizia a lavorare nella console

Inizia subito a creare nella Console di gestione AWS.

Accedi