Introduzione alla programmazione con il gioco del Tris…

Se vuoi avvicinare tuo figlio alla programmazione e stai cercando un progetto interessante e coinvolgente, il gioco del Tris (conosciuto anche come tic-tac-toe) è un’ottima scelta.

In questo articolo, presenterò una versione procedurale del gioco del Tris, che ho scelto perché è più accessibile per i principianti rispetto a un approccio orientato agli oggetti. Scopriamo insieme come funziona!

Il gioco del Tris procedurale utilizza la libreria Tkinter di Python, che consente di creare interfacce grafiche in modo semplice e veloce. L’obiettivo del gioco è formare una linea orizzontale, verticale o diagonale di tre simboli uguali (solitamente “X” e “O”) su una griglia 3×3. Il gioco procede a turni, con i due giocatori che inseriscono il proprio simbolo in una cella vuota della griglia. Il primo giocatore che forma una linea di tre simboli uguali vince la partita.

Il codice procedurale del gioco del Tris è composto da diverse funzioni che gestiscono le varie parti del gioco. Di seguito è riportata una breve descrizione di ciascuna funzione:

  • initialize_game(): Questa funzione inizializza le variabili del gioco e crea i pulsanti interattivi per ciascuna cella della griglia. Imposta il turno del primo giocatore e crea una griglia vuota.
  • make_move(i, j): Questa funzione viene chiamata quando un giocatore fa una mossa. Controlla se la cella selezionata è vuota e, se lo è, inserisce il simbolo del giocatore corrente. Dopo ogni mossa, verifica se c’è un vincitore o un pareggio. Se non ci sono vincitori o pareggi, passa il turno all’altro giocatore.
  • check_vittoria(): Questa funzione controlla se c’è un vincitore, verificando se esiste una linea orizzontale, verticale o diagonale di tre simboli uguali. Restituisce True se c’è un vincitore, altrimenti False.
  • check_pareggio(): Questa funzione verifica se tutte le celle della griglia sono piene e nessun giocatore ha vinto. Se è così, restituisce True, altrimenti False.
  • annuncia_vincitore() e annuncia_pareggio(): Queste funzioni vengono chiamate quando il gioco termina con una vittoria o un pareggio. Mostrano una finestra di dialogo con il risultato del gioco e chiedono ai giocatori se vogliono iniziare una nuova partita o uscire dal gioco.
  • disabilita_pulsanti(): Questa funzione disabilita tutti i pulsanti della griglia quando il gioco termina, impedendo ulteriori mosse.
  • reset_board(): Questa funzione viene chiamata quando i giocatori decidono di iniziare una nuova partita. Ripristina lo stato iniziale della griglia, reimpostando i pulsanti e il turno del giocatore.


Un approccio procedurale è spesso più accessibile per i principianti rispetto a un approccio orientato agli oggetti, perché è più facile da comprendere e richiede meno concetti avanzati. Inoltre, un codice procedurale è generalmente più breve e semplice da leggere e modificare, il che può aiutare i principianti a concentrarsi sulle basi della programmazione senza dover affrontare la complessità aggiuntiva delle classi e degli oggetti.

Il gioco del Tris è un progetto semplice ma coinvolgente per avvicinare tuo figlio alla programmazione. La versione procedurale del gioco presentata in questo articolo è ideale per i principianti, poiché offre un approccio più accessibile e comprensibile rispetto a un’implementazione orientata agli oggetti. Attraverso questo progetto, tuo figlio può imparare le basi della programmazione e acquisire familiarità con la creazione di interfacce grafiche utilizzando la libreria Tkinter.

Buon divertimento e buona programmazione!

…delirio dei sensi

Bernini, maestro della passione avvolgente e calda, sapeva catturare il desiderio lacerante e violento, riassumendolo in gesti eleganti e definitivi. La sua abilità trascendeva il bene e il male, oltre la morale pubblica o privata, e oltre la legge. La sua arte, come la statua del ratto di Proserpina, dimostra una profonda comprensione del delirio dei sensi, con dita di marmo gelido che penetrano in una carne marmorea che non mostra alcun segno del suo materiale.

Le opere di Bernini non si rivolgono alla ragione, ma piuttosto stordiscono l’osservatore con volute e spirali che avvolgono e fanno perdere i sensi. L’artista, capace di colpire brutalmente suo fratello per un’amante destinata a essere abbandonata, si immergeva completamente nel delirio dei sensi.

La sua arte racconta storie di stupri e sante in estasi come le peggiori peccatrici, sintetizzando la lotta eterna tra l’istinto e la legge, tra carnefice e vittima, tra la passione che non ascolta ragioni e la civiltà. Il suo lavoro riflette la filosofia di Agostino: “ama e fa’ ciò che vuoi”. Bernini esemplifica questa filosofia con l’innocenza sensuale e travolgente che solo i santi e i grandi peccatori possiedono.

Che si tratti di scolpire una statua o di disegnare un portico per San Pietro, l’arte di Bernini evoca un’ebbrezza che trascina l’osservatore in un vortice di emozioni. In ogni sua opera, Bernini ha saputo incapsulare il conflitto tra la pulsione e la legge, tra il carnefice e la vittima, e tra la passione e la civiltà, in modo ineguagliabile.