2.4. Abstracció
L’abstracció és un habilitat clau del pensament computacional. Consisteix a identificar el que és realment rellevant i descartar tot allò que no és estrictament necessari. D’aquesta manera, la informació important esdevé més comprensible i, alhora, esdevé més simple centrar-se en el que és essencial.
Per exemple, en les estacions de metro sovint podem trobar una representació de les estacions damunt d’una línia recta. En aquesta representació hi apareixen de manera ordenada les estacions de la línia, s’hi assenyala l’estació on ens trobem i s’indiquen les correspondències amb altres línies. S’ha obviat el recorregut real que fa el metro: totes les estacions estan disposades en línia recta. També s’han obviat les distàncies entre estacions, ja que en la realitat no són totes equidistants. Però aquesta abstracció permet a les persones identificar on es troben, quantes parades han de fer per arribar a la seva destinació o a quina estació han de baixar per canviar de línia.
Un altre exemple el trobem en el menú diari dels restaurants. En un sol full de paper es llisten unes opcions de primer plat, unes opcions de segon plat i les postres, amb els corresponents preus. No s’especifiquen tots els ingredients que s’utilitzen en cada plat ni el procés que se segueix per cuinar-los. Però aquesta simplificació se centra en l’essencial, i així, de forma ràpida i senzilla, els clients i les clientes poden triar el dinar per un preu tancat.
A l’hora de programar, l’abstracció permet centrar-se en el nucli del programa. Permet identificar els blocs de codi a partir del qual es crearà el programa sencer. En la figura 3 es mostra un programa per dibuixar un pentàgon regular d’un color i una mida determinats. A partir d’aquest exemple es demana a l’alumnat que creï un programa per dibuixar un hexàgon.
Analitzant el programa, podem observar que qualsevol polígon es podrà dibuixar fent una repetició de tantes vegades com costats tingui el polígon i fent un gir en graus equivalent a dividir una volta sencera, 360 graus, pel nombre de costats, ja que el dibuix comença i acaba en el mateix punt. En la taula següent es mostren tres exemples:
Taula 1. Aplicació de l’abstracció
Nombre de costats | Repeticions | Gir en graus (360/costats) | |
Pentàgon | 5 | 5 | 360/5 = 72 |
Hexàgon | 6 | 6 | 360/6 = 60 |
Pentàgon | 7 | 7 | 360/7 = 51,43 |
En aquest cas, doncs, l’elaboració del programa es redueix a identificar el nombre de costats del polígon i a dividir 360 graus per aquest nombre de costats. Aquest és el cor d’aquesta programació i el codi es programarà a partir d’aquest concepte central. Caldrà aplicar altres conceptes computacionals i habilitats per completar-lo, però el nucli és aquesta abstracció.