Stub (informatica)

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

Stub o anche metodo stub, è una porzione di codice utilizzata per simulare il comportamento di funzionalità software (come una routine su un sistema remoto) o l'interfaccia COM e può fungere anche da temporaneo sostituto di codice ancora da sviluppare. Sono pertanto utili durante il porting di software, l'elaborazione distribuita e in generale durante lo sviluppo di software e il software testing.

Caratteristiche[modifica | modifica wikitesto]

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 dichiararsi 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 uno "scheletro".[2]

Esempio[modifica | modifica wikitesto]

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 e 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.

Note[modifica | modifica wikitesto]

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

Voci correlate[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica