A14. LINGUAXE DE PROGRAMACIÓN = IDIOMA DOS ORDENADORES

Unha mesma mensaxe en distintos idiomas

Unha mesma mensaxe en distintos idiomas

É frecuente ver estampas como as da figura 3 cunha mesma mensaxe en distintos idiomas, sobre todo en lugares moi turísticos.

Para entendernos cos ordenadores, para construir programas que lle indiquen ó ordenador a tarefa a realizar, hai distintos idiomas ou linguaxes de programación: R, Java, Python, Matlab, C/C++, Fortran… (os nomes non teñen ningún sentido, son simplemente nomes).

 

Por analoxía coas linguas faladas e escritas, as linguaxes de programación tamén conteñen:

Un vocabulario

son un conxunto de palabras reservadas que teñen un significado especificado para esa linguaxe de programación.

É un conxunto moitísimo máis reducido que o dos idiomas.

Por imaxinar unha comparación, podería ser comparable as palabras de inglés que sabe o alumnado de segundo de educación primaria.

Regras para a construcción de frases

Regras para a construcción de frases (na programación chamadas sentencias): as sentencias son as accións mínimas que podes especificar na linguaxe de programación.

Cada linguaxe de programación ten regras parecidas para a construción de sentencias, aínda que utilizando un vocabulario distinto.

Principais mecanismos para a construcción de programas

Os principais mecanismos para a construcción de programas foron inventados por Ada Lovelace no século XIX.

Ela fixo ese invento sobre o papel, na teoría, e non foi ate moitos anos despois, a mediados do século XX, cando se puxeron en práctica sobre unha máquina inventada por Alan Turing e Joan Clarke.

Ada Lovelace inspirouse na súa vida cotiá para chegar a estos mecanismos, observando o que a rodeaba e, sobre todo, maravillada polo funcionamento dos teares industrias da Inglatera do século XIX, que confecionaba eses bordados tan esplendorosos.

Estes mecanismos consisten, principalmente, en conseguir que un programa poida ir por un camiño ou outro dependendo dalgunha condición (bifurcacións) e que poidamos repetir a execucción dun certo número de sentencias (repeticións). Veremos máis adiante con exemplos prácticos que ambas operacións son inherentes a nosa vida diaria.

Os mecanismos para a construcción de programas son:
Unha sentencia despois doutra

É similar a escritura dun conto, poñemos unha frase (sentencia na programación) despois doutra mantendo o fío conductor da historia.


Por exemplo, pola maña, cando comezo o día, fago certas accións de xeito secuencial (unha despois doutra): erguerme da cama, vestirme, almorzar e saír da casa.

Bifurcacións

A capacidade que teñen os programas para facer un conxunto de accións ou outras en función dalgunha condición.


Como a programación imita a vida real, imaxinade que moitos días chego ó cruce de estradas ou rúas que está próximo a miña casa.


Se é durante o curso e as nove da maña, sigo o camiño de frente porque vou ó cole, pero se é ás 7 da tarde vou para a dereita porque vou a facer deporte. Este comportamento tamén o podo observar en moitos programas que utilizamos habitualmente coma un procesador de textos, segundo o botón ou menú que seleccione o programa fai unha acción ou outra.


En resumo, permite realizar unhas accións ou outras en función dunha condición ou contexto.

Repetición dun conxunto de accións definida

Exemplo gráfico referido a vida real de un tipo de repetición: número de veces coñecido

Figura 3: Exemplo gráfico referido a vida real de tipo de repetición: número de veces coñecido.

Repite un conxunto de accións un número de veces coñecido a priori. Por exemplo, na vida real repito certas accións (levantarme, vestirme, almorzar, ir ó colexio) todos os día da semana (7 veces).


Estaredes pensando…. Ah! O fin de semana non vou ó colexio.


Ben, pois entón repito o de levantarme, vestirme e almorzar e inclúo unha bifurcación que comprobe se é fin de semana ou non e así incluir a acción de ir ó colexio ou non.

Repetición dun conxunto de accións indefinidas

Exemplo gráfico referido a vida real de un tipo de repetición: número de veces descoñecido de antemán

Figura 4: Exemplo gráfico referido a vida real de tipo de repetición: número de veces descoñecido de antemán.

Repite algunha acción mentres se dea algunha condición, parando cando deixe de cumprirse esa condición.

Imaxinade que estou na aula e invito a saltar ó alumnado dicíndolle que salten mentres estea aplaudindo. Cando deixe de aplaudir teñen que deixar de saltar.

O alumnado realiza unha acción (un salto) moitas veces, pero antes de que acaben as repeticións non sei cantas veces o fixo, porque depende do tempo que eu estea aplaudindo e do rápido que realicen cada salto.

O profesorado pode escenificar este proceso na aula co alumnado.

Estes mecanismos son simples para o noso entendemento e o entendemento do alumnado desta idade.

Podemos levalo a cabo dun xeito simbólico e lúdico, co obxetivo de comprender os mecanismos de funcionamento das máquinas computacionais, ou dun xeito máis real utilizando unha linguaxe de programación.

Como anécdota podo contar que, no curso 2022-23 realicei a actividade do robot cociñeiro nos CEIP de Curtis e Sobrado dos Monxes en A Coruña con alumnado de 5º e 6º de educación primaria e, para a miña sorpresa, puiden observar unha gran implicación e estusiasmo do alumnado coa actividade.

A construción de programas real pódese practicar utilizando dous tipos de linguaxes de programación:

Scratch

Linguaxe de programación gráfico (ver volcado de pantalla na wikipedia) desenvolto polo MIT Media lab (Instituto de Tecnoloxía de Massachusetts en Boston, Estados Unidos de América) orientado a programación de videoxogos e animacións.

Scratch xera unha asociación entre a construción de programas e o gusto polos videoxogos. Esta percepción pode desmotivar a curiosidade pola programación das persoas que non lles gusten os videoxogos. As nenas e adolescentes gústalles menos os videoxogos, probablemente debido ós estereotipos de xénero presentes nos videoxogos máis populares.

A esencia da programación non debería ligarse ós videoxogos, xa que estes representan un ámbito moi reducido das aplicacións da informática.

Na infancia, será necesario relacionar a aprendizaxe da programación coas vivencias e coñecementos do alumnado a esa idade, como por exemplo coas linguas faladas, o xogo motriz ou as matemáticas básicas, porque son realidades comúns para todo o alumnado.

Ademais o feito de utilizar as ferramentas de programación profesionais axuda a desmontar mitos como que a construcción de programas ou a enxeñaría informática é algo moi difícil, apto só para persoas especiais.

Python

É unha das linguaxes de programación máis populares hoxe en día.

Podes consultar información en internet como a propia wikipedia, páxina oficial da documentación ou as nosas clases de programación en Python en primeiro curso na Universidade de Santiago de Compostela.

Todas estas fontes de información van dirixidas para persoas adultas, non para a infancia.

Polo tanto, PYTHON vai ser a lingua (o idioma) co que interactuamos co ordenador para transmitirlle as mensaxes.

Aquí pode xurdir a dúbida de que co ordenador interactuamos cando xogamos a un videoxogo ou escribimos un texto no procesador de texto. É como pensar que dúas persoas que falan o mesmo idioma interactúan só por xogar xuntas no parque, cando non hai comunicación escrita nin verbal.

Cando estamos construíndo un programa, a interacción co ordenador está en usar o seu idioma (linguaxe de programación) para dicirlle como ten que facer as tarefas, para que outras persoas usuarias do ordenador as poidan executar.

Como no resto das linguas, temos que coñecer o vocabulario (palabras reservadas) e as regras de construción das frases (sentencias).

Vocabulario de Python