Més amb Scratch

5. La variable, el bucle o tirabuixó, la constant, els operadors i les llistes

Per completar aquesta petita aproximació al món de la programació cal parlar d’aquests cinc aspectes fonamentals:

Variable = incògnita en forma de valor

Aquí la definirem dient que es tracta d’una capsa o contenidor al qual l’enganxem una etiqueta identificativa davant, per saber el que hi guarda, i que servirà per desar una cosa a l’interior -segur que heu sentit dir alguna vegada que aquesta tindrà el valor X, Y o Z; doncs això, un valor per assignar. De variables, en el món de la programació, n’hi ha un munt i es diferencien pel seu tipus que definim abans de poder-les utilitzar. Nosaltres, dins de l’Scratch, les crearem d’igual forma però ho farem des del botó que mostra l’Armari amb les peces taronges anomenat Variables > Nova variable

Aspectes dels jocs com ara Vida, Salut, Energia o Puntuació en serien; però no només aquests sinó que en sentit ampli dins d’aquestes caixes podem encabir-hi d’altres coses (fixes o no) com ara dades lògiques, numèriques, de caràcter o tipus cadena sigui per valor o bé per freqüència dins l’àmbit local per a aquesta particular animació o més global per a totes les animacions

Aquesta parrafada, que segurament no s’entén, vol dir que podem posar-hi, per exemple, un SI o un NO i anar-ho a mirar quan programem. Imaginem una situació on ens calgui una clau per obrir una porta i que l’haguem definida com a variable amb l’etiqueta tinc_clau; quan el nostre actor topi amb un objecte gràfic amb aquesta forma farem que la variable tinc_clau sigui SI permetent-nos l’accedir amb aquesta al pany de la porta, per en cas contrari, mantenir amb un NO la porta tancada prèvia comprovació del seu valor per continuar -físicament aniríem a la capsa i miraríem a dins per esbrinar el valor d’aquesta incògnita; és a dir, aniríem cap a la porta i obriríem el contenidor tinc_clau per poder fer-ne ús en cas de tenir-la

En resum i explicat des del propi escenari amb el nostre actor, un dibuix d’una clau i una porta: l’actor o personatge es mou per l’escenari lliurement (la variable tinc_clau és NO) i va cap a la porta, aquesta no s’obrirà perquè al topar amb ella es pregunta pel contingut de la capsa i encara no tenim la clau. D’altra manera, si prèviament hem agafat la clau, tocant-la per exemple, haurem dit tot programant que la variable tinc_clau prengui el valor o sigui SI per poder passar-hi

Bucle i tirabuixó = repetició de cicles

Podem definir-los genèricament com a seqüència d’ordres aïllades que poden ser executades repetidament i direm que són instruccions especials en forma de serjant que n’abracen d’altres -sent un dels fonaments de la programació estructurada més moderna. Aquesta mena de mordassa, que trobarem al Armari de Control de l’aplicació, actua segons els casos com una sola lleixa reproduint tot allò que la conforma (grup de prestatges) bé sigui per sempre, un nombre determinat de vegades o de manera condicional en estructures com ara: si passa això, fes el següent o; si no, el que ve a continuació

Com no podria ser d’una altra manera també es poden concatenar per formar altres estructures més grans i aquesta formació seria el que anomenaríem tirabuixó o de repetició, fent referència a la circulació constant que fan els valors quan s’enfronten amb ell (una altra nomenclatura les anomena iteracions o loopings). Totes aquestes construccions estan basades en condicions que es duran a terme atenent al següent:

a) el bucle es repeteix mentre es compleix una condició

b) el bucle es realitza fins que s’acompleixi allò altre que diem

Constant = dada invariable

Aquí parlaríem d’una quantitat o peça alfanumèrica que manté sempre el mateix valor i que mai canvia durant l’execució del programa -es pot considerar com una mena de contenidor fix. En moltes ocasions es fan servir per alliberar l’ús tant de la memòria com del processador de la màquina, doncs limitats, convé utilitzar-los correctament i amb la major eficiència possible

Aquestes dades representen típicament valors com ara el nombre Pi, que un cop definit o igualat a 3,1416; serà canviat en temps de compilació per aquest valor, és a dir, que quan l’haguem posat dins d’una capsa i etiquetat com a constant Pi -cada vegada que l’utilitzem a una fórmula matemàtica- l’ordinador no l’haurà d’anar a cercar només el canviarà sent això un procés molt més àgil que l’ús propi de les variables

Operador = càlcul matemàtic

Els operadors serien aquelles peces que ens permetrien fer càlculs aritmètics, lògics o relacionals amb dades (cal tenir present que aquí només els utilitzarem com a figures que aniran dins d’altres lleixes o estants acolorits, és a dir, que formaran part d’altres estructures en forma de valor)

Arrays = llistes acumulatives o matrius

Existeixen una sèrie específica d’instruccions que ens permeten fer grups amb entrades tipus taula tot emmagatzemant els conceptes alfanumèrics com si féssim una llista, és a dir, una mena de col.lecció dinàmica amb dades a les que assignem una posició concreta per poder-les utilitzar. Fent un paral.lelisme, una mica bèstia, vindria a ser com la preparació de la llista de la compra, on anem posant element rere element en un paperet sense un ordre aparent on cada cosa a comprar és única i ocupa una posició en el llistat; podent d’una ullada veure’n un de concret o referint-nos-hi doncs, res ens impedeix, poder comprar el situat a la tercera posició primer (l’acte de comprar aquí seria sinònim d’acció programàtica)

Amb aquests últims conceptes tanquem l’acostament a la programació que us proposem pensant que ensenyar tot jugant amb eines informàtiques no és tant complicat sent, el propi Scratch, una bona mostra avalada pel prestigiós MIT i pels principis què, copiats de Xerox, aplicaren també els fundadors d’Apple a la seva màquina/sistema cap al 1982: imagina > crea > experimenta

Som molt conscients que amb això no n’hi ha prou i que, deliberadament, oblidem altres aspectes importants com ara la gestió dels moments, les entrades via teclat, la coordinació, l’execució paral.lela, la sincronització o la interacció dinàmica amb el ratolí; aspectes que tractarem, per separat, a moltes de les nostres propostes què en forma de repte, exemple o tutoria també us oferirem

Per altra banda també cal apuntar que aquesta aplicació –des del punt de vista propi de la programació– justeja en quan a conceptes que encara no contempla però què, de ben segur, abordarà a properes edicions com els procediments i les funcions, la recursivitat, el tractament d’excepcions, els paràmetres i els valors de retorn o la definició pròpia de classes

« Previ «


Comentaris tancats a Més amb Scratch