Salve 
Tempo fa ho realizzato una briscola in java priva di interfaccia grafica. Dunque funziona solo in modo testuale. Ho provato a creare la grafica e ad integrarcela ma non ho avuto successo. Allora ho deciso di fare un passo indietro, perché credo che il problema sia la mancanza della giusta progettazione del codice, che ora come ora non si presta ad una facile modifica per renderlo interattivo.
Ora voglio realizzare un'altra cosa che potrebbe aiutarmi. Vorrei realizzare un giochino (interattivo, che usa una semplicissima interfaccia swing) in cui due giocatori devono lanciare un dado a turno, e chi dei due ottiene il numero più alto guadagna un punto. Il tutto per 10 turni. Un giocatore agirà automaticamente, l'altro sarà l'utente, che per lanciare un dato premerà su un JButton, ovviamente quando è il suo turno.
Ovviamente non voglio la soluzione del codice, ma solo dei consigli generali. Vorrei separare la logica dalla grafica e magari sfruttare i threads.
Ad esempio, come posso organizzarmi per le classi? Devo usare swingWorker per processare i dati?

Tempo fa ho realizzato una briscola in java priva di interfaccia grafica. Dunque funziona solo in modo testuale. Ho provato a creare la grafica e ad integrarcela ma non ho avuto successo. Allora ho deciso di fare un passo indietro, perché credo che il problema sia la mancanza della giusta progettazione del codice, che ora come ora non si presta ad una facile modifica per renderlo interattivo.
Ora voglio realizzare un'altra cosa che potrebbe aiutarmi. Vorrei realizzare un giochino (interattivo, che usa una semplicissima interfaccia swing) in cui due giocatori devono lanciare un dado a turno, e chi dei due ottiene il numero più alto guadagna un punto. Il tutto per 10 turni. Un giocatore agirà automaticamente, l'altro sarà l'utente, che per lanciare un dato premerà su un JButton, ovviamente quando è il suo turno.
Ovviamente non voglio la soluzione del codice, ma solo dei consigli generali. Vorrei separare la logica dalla grafica e magari sfruttare i threads.
Ad esempio, come posso organizzarmi per le classi? Devo usare swingWorker per processare i dati?