2009-09-20 12 views
7

c'è una citazione da Algorithms per Java (sedgwick 2003) p. 135: "comunemente utilizziamo programmi di driver durante lo sviluppo o il debug di applicazioni aggiuntive" cosa si intende per programma driver? Google ha appena mi dà un sacco di informazioni sui driver di programmazione, chiaramente non correlaticosa significa programma driver?

risposta

16

In questo contesto un programma driver è solo un programma che utilizza la classe o algoritmo che si sta sviluppando. Viene utilizzato principalmente per testare il codice durante lo sviluppo.

+2

ok, sapevo che sarebbe stato qualcosa di semplice e banale, grazie per aver chiarito – Tom

4

È semplicemente un programma progettato per chiamare varie API e parti di logica con cui si sta lavorando. Per esempio. se si dispone di una libreria che legge file XML, esegue una sorta di trasformazione su di essa e scrive i dati trasformati in un altro file, per lavorare con quella libreria si crea un programma driver che non fa altro che chiamare quelle 3 API e gestisce gli errori - per esempio guida/indirizza la tua API per fare il suo lavoro.

1

Un driver è generalmente un programma eseguibile (relativamente semplice) progettato per esercitare alcuni componenti che non sono direttamente eseguibili, come una libreria o un ADT o una suite di test, ecc. Ad esempio, si potrebbe avere una classe Table che supporta la lettura in CSV e supporta l'output in formato CSV e HTML. Potresti scrivere un semplice programma che accetta sulla riga di comando il nome di un file CSV di input e un formato da esportare in modo da poter confermare che la classe Table fa ciò che ti aspetti. Tutto ciò che il driver farebbe è costruire un'istanza della tabella e leggere il file e usarlo per scrivere nel formato specificato.

6

Un programma Driver, a quanto ho capito, è solo una semplice classe che crea un'istanza del programma generale che è stato creato.

Nei programmi universitari, abbiamo iniziato a imparare Java realizzando driver molto semplici, che passavano semplicemente in parametri a classi e metodi casuali.