Stub (informatica)

Da Wikipedia, l'enciclopedia libera.

Un metodo "stub" o semplicemente stub nell'Ingegneria del software è una porzione di codice utilizzata in sostituzione di altre funzionalità software. Uno stub può simulare il comportamento di codice esistente (come una Routine su un sistema remoto) o COM, e temporaneo sostituto di codice ancora da sviluppare. Gli stub sono perciò molto utili durante il porting di software, l'elaborazione distribuita e in generale durante lo sviluppo di software e il software testing.

Un esempio di stub in pseudocodice può essere il seguente:

   BEGIN
       Temperatura = LeggiTermometro(Fuori)
       IF Temperatura > 40 THEN
            PRINT "Fa caldo!"
       END IF
   END
   BEGIN LeggiTermometro(Fonte dentroFuori)
        RETURN 28
   END LeggiTermometro

Lo pseudo-codice riportato sopra utilizza la funzione LeggiTermometro, che dovrebbe rilevare la temperatura da un dispositivo hardware esterno ma, non essendo ancora disponibile questa funzionalità (o perché si è in fase di sviluppo), non contiene il codice necessario tuttavia restituisce un valore accettabile. In sostanza "simula" il comportamento della funzione definitiva consentendo al programma principale di essere almeno in parte testato. Si noti inoltre che, anche se accetta un parametro di tipo Fonte, che dovrebbe determinare se la temperatura da rilevare è interna o esterna al dispositivo, in realtà lo stub, in questo caso, non viene condizionato da tale parametro.

Questa figura mostra come avviene la comunicazione tra Client e Server in ambito di programmazione informatica, attraverso dei metodi definiti STUB e SKELETON

Uno stub[1] è una funzione che in realtà si limita a dichiarasi accettando dei parametri e restituisce dei valori accettabili da parte del codice chiamante in un ipotetico scenario reale. Gli stub sono impiegati come "segnaposto" durante l'implementazione di interfacce tra programmi la cui descrizione è definita ma la cui implementazione non è ancora stata definita/finalizzata. Uno stub contiene il codice appena sufficiente per permettere di essere compilato e collegato con il resto del programma. Nella letteratura riguardante la RMI (invocazione di metodi remota), uno stub comunica sul lato server con un "scheletro".[2]

Note[modifica | modifica sorgente]

  1. ^ stub, WEBOPEDIA. URL consultato il 28 agosto 2012.
  2. ^ (EN) Eric Freeman, Elisabeth Freeman, Sierra Kathy e Bates Bert in Mike Loukides (a cura di), Head First Design Patterns (paperback), vol. 1, O'REILLY, 2004, p. 440, ISBN 978-0-596-00712-6. URL consultato il 28 agosto 2012.

Voci correlate[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]