<H1>Interfaccia Comandi</H1> ---- %TOC% ---- ---++ La classe <nop>Comando L'interfaccia comandi del progetto si basa su di una classe [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/src/scacchi/main/Comando.java][<nop>Comando.java]] che memorizza un comando (si veda anche la [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/Comando.html][documentazione della classe]]) e fornisce il metodo che esegue il comando richiamando l'opportuno metodo di Partita. Questa classe, basandosi su Partita è astratta, dato che per iniziare una nuova partita chiama il metodo astratto [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/Comando.html#nuovaPartita()][nuovaPartita]] (o la versione che riceve il numero di mossa e la lista delle posizioni dei pezzi come argomenti). Questi pezzi possono essere concretamente implementati solo una volta specificata la classe che implementa l'interface <nop>Partita. ---++ La classe <nop>ComandoScacchi La classe [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/src/scacchi/main/ComandoScacchi.java][<nop>ComandoScacchi.java]] è la classe concreta che implementa <nop>Comando per il caso di <nop>PartitaScacchi (si veda anche la [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/ComandoScacchi.html][documentazione della classe]]). I due metodi astratti sono semplicemente implementati da una chiamata al corrispondente costruttore di <nop>PartitaScacchi. ---++ La classe <nop>InterfacciaComandi La classe [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/src/scacchi/main/InterfacciaComandi.java][<nop>InterfacciaComandi.java]] è la classe che implementa la lettura dei comandi da uno stream di input e la loro esecuzione (si veda anche la [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html][documentazione della classe]]). Il costruttore di questa classe crea una nuova interfaccia associato ad un input stream di caratteri (una sottoclasse di [[http://java.sun.com/j2se/1.4.2/docs/api/java/io/Reader.html][<nop>Reader]]). In particolare, il costruttore senza argomenti associa l'interfaccia allo standard input. Il metodo [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html#nextComando()][nextComando]] legge un comando seguito da ';' dallo stream di input, lo esegue e lascia il risultato dell'esecuzione in alcuni campi privati della classe accessibili mediante i metodi: * [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html#cmd()][cmd()]] che ritorna la stringa del comando letto * [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html#out()][out()]] che ritorna, sotto forma di stringa, l'output del comando eseguito (in caso di esecuzione senza problemi del comando) * [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html#errore()][errore()]] che segnala se il comando ha portato ad un errore (sintattico o di esecuzione) * [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html#msg()][msg()]] la stringa con il messaggio di errore nel caso in cui il comando abbia causato un errore Questa classe, basandosi sulla classe astratta <nop>Comando è a sua volta astratta. Infatti il metodo [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandi.html#nuovoComando(java.lang.String)][nuovoComando]] per la creazione di un comando ` astratto. ---++ La classe <nop>InterfacciaComandiScacchi La classe [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/src/scacchi/main/InterfacciaComandiScacchi.java][<nop>InterfacciaComandiScacchi.java]] è una sottoclasse concreta di <nop>InterfacciaComandi per la lettura di comandi per <nop>PartitaScacchi (si veda anche la [[http://www.dsi.uniroma1.it/~guerrini/ProgOgg/progetto/doc/scacchi/main/InterfacciaComandiScacchi.html][documentazione della classe]]). Il metodo nuovoComando è impementato per mezzo di una chiamata al costruttore di <nop>ComandoScacchi.
This topic: PO
>
WebHome
>
Progetto
>
InterfacciaComandi
Topic revision: r3 - 2004-12-20 - StefanoGuerrini
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback