Estem habituats a resoldre problemes o situacions en el nostre dia a dia: una jugada de futbol o d'escacs, seguir una recepta de cuina, llegir unes instruccions. Doncs bé, tot aquest seguit d'accions dutes a terme de manera ordenada i encaminades a resoldre un problema s'anomena algorisme.
Els algorismes els podem representar de diverses maneres, entre les més conegudes: en llenguatge natural (recepta de cuina), en pseudocodi (semblant al llenguatge de programació) o bé en un diagrama de flux (esquema gràfic).
Imatge extreta de Pixabay
Un programa informàtic és una seqüència d’instruccions, ordenades i escrites en un llenguatge de programació, que pot ser executat en un ordinador dispositiu digital per acomplir una tasca concreta.
Aquestes instruccions estan escrites en un codi que l'ordinador és capaç d'interpretar, anomenat llenguatge de programació.
De llenguatges de programació n'hi ha de molts tipus. Alguns dels més usats: C, Java, HTML, SQL, Python o Scratch (és el programa que utilitzaràs per iniciar-se en aquest camp).
La programació es basa en la resolució de problemes seguint una sèrie d'instruccions ordenades. És necessari escriure les instruccions en una determinada seqüència.
Quan aquesta forma de resolució de problemes s'aplica al disseny de sistemes o a la comprensió del comportament humà en qualsevol àmbit, s'anomena pensament computacional.
Un algoritme és una sèrie d'instruccions per a executar una tasca específica mitjançant accions ordenades i finites. Un programa pot estar compost per un o més algoritmes, que també s'anomenen procediments o subrutines.
Un algorisme es pot expressar en llenguatge natural (recepta de cuina), pseudocodi, mitjançant instruccions de llenguatge de programació, o de forma gràfica, mitjançant diagrames de flux.
Un diagrama de flux és una representació gràfica de l'algoritme d'un programa mitjançant figures bàsiques que simbolitzen les operacions que es realitzen en cada algoritme. Cada figura representa una operació.
Els ordinadors i els dispositius electrònics no entenen el llenguatge natural amb què ens comuniquem nosaltres; només entenen el codi màquina, format per 1 i 0. Per a realitzar programes s'usen diferents llenguatges de programació i cadascun d'ells té instruccions i sintaxis pròpies. Després l'aplicació, intèrpret, els traduirà a llenguatge màquina.
Els llenguatges de programació es classifiquen en:
Llenguatges de baix nivell: són aquells que entén l'ordinador i controlen directament el hardware. Exemples: codi màquina o llenguatge assembler.
Llenguatge d'alt nivell: són aquells en els que les instruccions són paraules semblants al llenguatge natural. Perquè l'ordinador entengui els programes, s'usen eines, anomenades compiladors o intèrprets, que tradueixen les instruccions a llenguatge màquina. Exemples: Java, C++ i Python.
L'entorn de desenvolupament o IDE (Integrated Development envionment) és el conjunt d'eines emprades per a l'elaboració d'un programa. Es compon d'un editor de codi, un compilador o intèrpret i un depurador.
L'aplicació es pot instal·lar a l'ordinador (aplicació d'escriptori o app) o executar en línia (web). Els entorns on-line permeten desar els programes al núvol per accedir-hi des de qualsevol dispositiu, sense haver de tenir ni els arxius (programa) ni l'aplicació a l'ordinador, en local.
Els entorns de desenvolupament poden ser textuals o gràfics. Els entorns gràfics disposen d'una interfície gràfica d'usuari o GUI (Graphical User Interface), que proporciona un entorn visual senzill i intuïtiu.
Scratch és un entorn de programació gràfic, d'ús lliure, que permet treballar en línia (on-line) o a l'ordinador off-line si descarregues i instal·les el programa.
Per començar a treballar has d'accedir a https://scratch.mit.edu. Pots registrar-te o treballar directament.
Nosaltres ens registrarem (Singup / Join Scratch), el primer cop i després treballarem sempre havent-nos identificat, iniciat sessió (Login / Sign in)
Fes clic a Crea per a començar un programa.
Per treballar a partir d'un projecte disponible a la xarxa has de prémer l'opció Explora.
A la pestanya Idees trobaràs tutorials i programes d'exemple.
Pots accedir als teus programes des de l'opció Les Meves Coses.
L'entorn d'Scratch es compon de diferents seccions, que estan col·locades a diferents posicions depenent de la versió. A sota mostra la disposició dels elements a l'IDE de la versió 3.0.
Scratch treballa amb programació orientada a objectes, és a dir, associa instruccions de programació als objectes que formen part del programa.
Els objectes i personatges són els elements que es poden inserir als programes d'Scratch. Pot fer-se des de la Biblioteca o des d'arxius externs. També es poden pintar/dibuixar nous objectes o disfresses d'aquests, fent un dibuix senzill amb l'editor d'imatges i desant-lo amb l'extensió .png.
A la biblioteca d'objectes pots trobar diverses categories: animals, gent, fantasia, ballar…
A la part superior del panell d'objectes i escenaris apareixen les característiques de l'objecte seleccionat, com l'orientació i l'estil de rotació.
Cada objecte pot tenir associats diferents vestits, disfresses. Un vestit és una versió de l'objecte que té una aparença diferent. A un vestit pot canviar la posició, l'expressió o el color. A la pestanya Vestits pots veure si l'objecte seleccionat es pot editar o crear mitjançant les eines de l'editor d'imatges.
Els escenaris són els fons (background) sobre els que actuen els objectes a Scratch.
De la mateixa forma que els objectes, es poden inserir des de la biblioteca, des d'un arxiu o es poden pintar a l'editor.
A l'hora de programar es poden utilitzar diferents estructures segons la finalitat del programa. Les més conegudes són: estructura seqüencial, estructura repetitiva o iterativa i estructura condicional.
Estructura seqüencial
Estructura repetitiva
Estructura condicional
Les variables són espais de memòria on podem guardar informació. Vindrien a ser capsetes on podem guardar valors.
En el següent exemple hem creta una variable per guardar el valor de les "vides" que té el personatge "gat". Cada vegada que la papallona (butterfly) toqui el gat restarà una vida:
En aquest altre exemple usarem una variable, "velocitat", per augmentar la velocitat del moviment de l'elefant:
Per poder intercanviar informació entre programa i usuari, pots fer servir les "preguntes" i "respostes" que trobaràs en l'apartat sensors. El valor de la resposta de cada pregunta el pots utilitzar dins el teu programa.
A banda de les preguntes i respostes, per comunicar-te dins el programa pots fer servir l'enviament i recepció de missatges.
Preguntes i respostes i enviament de missatges
Recepció de missatges