Salve ragazzi. Postai già qui tempo addietro delle richieste di aiuto per la mia briscola in java. Siccome ho poco tempo per starci seriamente sopra procedo a stento. Mi sono reso conto che le mie carenze in fatto di programmazione mi portano non pochi problemi nell'integrare la grafica con lo svolgimento logico del programma, così ho deciso di assicurare PRIMA il funzionamento logico e POI capire come integrarci in modo corretto ed efficiente una grafica tramite le swing. Ora il programma funziona quasi alla perfezione da un punto di vista solamente TESTUALE. Non vi è alcuna interfaccia. Non sono comunque soddisfatto del risultato. Vorrei che fosse perfetta anche la logica di progettazione. Mi spiego, vorrei che le classi siano concettualmente corrette e che facciano quello che devono fare per loro stessa natura.
Ho queste classi:
- Carta
- Seme (enumerazione)
- Mazzo
- Tavolo
- Giocatore
- Computer
- Brain
- Game
- PointsCalculator
- Start
Su Carta e Seme c'è poco da dire. La carta ha un valore ed un seme. Il mazzo è un ArrayList di carte che si mischia da solo quando viene istanziato e dalla quale è possibile estrarre carte. Tavolo ha come attributi tutti gli oggetti presenti su un tavolo quando si gioca a briscola. Ossia la carta briscola girata, il mazzo di carte e le eventuali carte giocate dai giocatori (anche le carte PRECEDENTI giocate). Ha tutti i metodi get e set per impostare le giocate e capire quali carte ci sono sul tavolo. Giocatore e Computer sono molto simili, ed hanno come attributi principali le tre carte che possono giocare, metodi get e set per queste carte. Start ha il main e si limita a creare una nuova partita (new Game()..). Game presenta i metodi iterativi principali allo svolgimento della partita e si appoggia a Brain per l'intelligenza artificiale ed a PointsCalculator per il calcolo ed aggiornamento del punteggio.
E' corretto? Vorrei trovare il modo migliore di progettarlo che mi aiuterebbe ad integrarci la grafica.