Prima di iniziare a programmare per insegnare a un computer a risolvere un problema specifico, normalmente dovresti dare un senso al problema da solo, trovare una soluzione e solo allora insegnare a un computer ad affrontarlo. Il pensiero computazionale è un metodo per rendere questo processo più veloce e più facile, ma non si limita solo alla programmazione e può essere applicato a varie parti della nostra vita.

Il Computational Thinking (CT) è un concetto che gli esperti del settore chiamano "codice per il successo" e "abilità vitale". Anche se è relativamente semplice, CT può essere utile ben oltre la semplice programmazione del software. Il termine è stato proposto per la prima volta nel 1980 da Seymour Papert, un matematico e scienziato informatico, come un modo per risolvere in modo più efficiente vari problemi e compiti relativi alla programmazione.

CT è un insieme di metodi che implica prendere un problema complesso e scomporlo in una serie di problemi più piccoli che sono più facili da gestire, oltre a esprimere l'essenza di un problema e la soluzione in modi che un computer potrebbe eseguire.

Come funziona il pensiero computazionale?

Il pensiero computazionale come tecnica consiste in quattro metodi principali, che sono decomposizione, generalizzazione/astrazione, riconoscimento di modelli/rappresentazione dei dati e algoritmi. Sono tutti ugualmente importanti ed efficaci se applicati (a un problema) nel giusto ordine.

Decomposizione

Inizi con la scomposizione, che separa un problema in una serie di problemi più piccoli che sono più facili da risolvere uno per uno.

Astrazione (generalizzazione)

Quindi si procede a un compito/problema specifico, concentrandosi esclusivamente sulle informazioni importanti per risolverlo e ignorando tutto il resto.

Riconoscimento di modelli (rappresentazione dei dati)

Il prossimo passo è cercare somiglianze tra il problema su cui stai attualmente lavorando e altri problemi che sono stati risolti in precedenza (con la soluzione disponibile). L'obiettivo è trovare schemi che possono essere applicati all'attività corrente.

Algoritmi

E infine, avendo i risultati dell'applicazione dei passaggi precedenti, sviluppi un algoritmo per una soluzione del problema passo dopo passo. Un algoritmo quindi può essere eseguito da un computer (o dal tuo cervello, che è l'ultimo compito di risoluzione del computer nella tua vita).

Usando il pensiero computazionale

Sapere come utilizzare CT quando si affrontano problemi e attività che la maggior parte degli sviluppatori di software affronta regolarmente può essere estremamente utile per tutta la tua carriera nella programmazione.

Ecco una guida rapida su come iniziare ad applicare il pensiero computazionale alle attività di codifica o praticamente a qualsiasi problema serio che potresti dover affrontare nella tua vita personale.

Applicazione della scomposizione

La scomposizione è una tecnica abbastanza semplice ma potente, che può aiutarti ad affrontare problemi/compiti che a prima vista sembrano troppo complessi e quindi spesso causano procrastinazione e altre difficoltà. La chiave qui è allenare il tuo cervello a usare la decomposizione su base regolare, dividendo un compito in un numero di compiti più piccoli che sono più facili da risolvere. Anche se la scomposizione può sembrare un metodo molto semplice e persino ovvio, rimarrai sorpreso dal fatto che molte persone non ne siano consapevoli, il che rende molto più difficile per loro iniziare a lavorare su attività globali (come imparare Java, Per esempio).

Applicazione dell'astrazione

Saper applicare l'astrazione è un'abilità potente se conosci la tecnica e hai allenato il tuo cervello a usarla inconsciamente. L'astrazione consiste nel concentrarsi esclusivamente sulle informazioni necessarie per risolvere l'attività ignorando tutto il resto. Usato in combinazione con la decomposizione, è fondamentalmente il metodo per affrontare praticamente qualsiasi problema o problema nella tua vita. Quando si ha a che fare con compiti strettamente di programmazione, l'astrazione aiuta a concentrarsi ed evitare che il cervello si esaurisca troppo velocemente.

Applicazione del riconoscimento del modello

Il riconoscimento di schemi è un'abilità piuttosto importante nella codifica, in quanto ti consente di risolvere compiti molto più velocemente applicando schemi di pensiero che il tuo cervello conosce e utilizza a suo agio. È anche una tecnica potente da applicare ai problemi generali della vita: basta provare ad analizzare qualsiasi problema che stai affrontando nella tua vita e trovare (e prendere in prestito) schemi da quelle parti della tua vita che funzionano in modo soddisfacente, trasferendoli al problema attuale.

Applicazione di algoritmi

Quando ci pensi, la nostra vita è tutta incentrata sulla formazione di algoritmi. Le chiamiamo abitudini. Il nostro cervello tende a fare affidamento sulle abitudini ogni singolo giorno, solo perché è più efficiente e quindi pratico. L'unico problema è che la maggior parte di noi tende a farlo inconsciamente, il che spesso si traduce nella formazione di algoritmi sbagliati e dannosi (li chiamiamo cattive abitudini o dipendenze). Sapere come formare algoritmi utili consapevolmente può essere un'abilità di vita estremamente vantaggiosa, che ti consente di raggiungere i tuoi obiettivi e avere successo. Quando si tratta di programmazione, sapere come formare un algoritmo per risolvere un particolare problema nel modo più rapido ed efficiente è ciò che differenzia una persona che sa solo programmare da un esperto programmatore di computer professionista.