Sto cercando di creare un gioco basato su console molto semplice con l'obiettivo di utilizzare OOP invece di programmazione procedurale perché intendo creare su quel codice progetti più complessi.
Mi chiedo se esiste un modello di progettazione che gestisca bene questo caso d'uso:
- There is a
Player
class with aMakeMove()
method interacting with the board game.
Il metodo MakeMove()
deve in qualche modo ottenere l'input dell'utente ancora non voglio codificarlo nella classe Player
in quanto ciò ridurrebbe l'accoppiamento di coesione e aumento.
Stavo pensando che forse alcuni controller di classe gestiscono la sequenza di eventi e quindi le chiamate all'input da tastiera. Tuttavia, quella classe controller dovrebbe essere in grado di gestire in modo diverso le sottoclassi di Player
(ad esempio la classe AI
non richiede l'input da tastiera).
Pensieri?