Maria Elisabete de Sousa Cunha

Propaganda
UMinho|2015
Maria Elisabete de Sousa Cunha Aulas interativas com recurso à exposição: Uma metodologia para o ensino da linguagem de programação Python
Universidade do Minho
Instituto de Educação
Maria Elisabete de Sousa Cunha
Aulas interativas com recurso à exposição: Uma
metodologia para o ensino da linguagem de
programação Python
abril de 2015
Universidade do Minho
Instituto de Educação
Maria Elisabete de Sousa Cunha
Aulas interativas com recurso à exposição: Uma
metodologia para o ensino da linguagem de
programação Python
Relatório de Estágio
Mestrado em Ensino de Informática
Trabalho realizado sob a orientação da
Professora Doutora Altina Ramos
abril de 2015
DECLARAÇÃO
Nome: Maria Elisabete de Sousa Cunha
Endereço eletrónico: [email protected]
Telemóvel: 965732023
Número do cartão de cidadão: 9513806
Título do Relatório: Aulas interativas com recurso à exposição: Uma metodologia para
o ensino da linguagem de programação Python
Supervisora: Professora Doutora Altina Ramos
Ano de conclusão: 2015
Designação do Mestrado: Mestrado em Ensino de Informática
É AUTORIZADA A REPRODUÇÃO INTEGRAL DESTE RELATÓRIO APENAS
PARA EFEITOS DE INVESTIGAÇÃO, MEDIANTE DECLARAÇÃO ESCRITA DO
INTERESSADO, QUE A TAL SE COMPROMETE.
Universidade do Minho, ____/ ____/ _______
Assinatura: _____________________________________________
AGRADECIMENTOS
À professora Altina pela paciência e dedicação que despendeu para que este projeto chegasse a
bom porto.
À minha mãe pela paciência e compreensão pelos momentos que deixei de lhe dar a atenção
que considero seria importante.
Ao colega do curso Jorge Coutinho pela força que me deu para que eu levasse este projeto até
ao fim e ajuda em alguns momentos do curso.
À Escola Secundária Alberto Sampaio por me ter recebido com sua estagiária.
iii
iv
RESUMO
Aulas interativas com recurso à exposição: Uma metodologia para o ensino da
linguagem de programação Python
A metodologia utilizada durante a minha intervenção pedagógica teve recurso à exposição
para apresentar alguns conceitos da linguagem de programação Python, sendo este o assunto
lecionado, fazendo alternância com a interação e complementando com a resolução de
problemas desenvolvendo programas utilizando esta linguagem.
Este trabalho foi realizado num turno de 10 alunos de uma turma com 21 alunos do curso
profissional Técnico de Gestão e Programação de Sistemas Informáticos do 12º ano. A disciplina
era designada de Programação e Sistemas de Informação. Teve a duração de 16 aulas
contínuas de 90 minutos.
Os objetivos que se pretendiam com a aposta em interação era tornar estes alunos mais
colaborativos e motivados. Mas essencialmente verificar que as suas aprendizagens foram
consolidadas e que eles adquiriram novas competências.
Foram aplicados três questionários online, um inicial para apurar os conhecimentos
prévios, entre outos assuntos e dois finais, onde num deles pretendi apurar as aprendizagens
realizadas e o outro para eles avaliarem as aulas lecionadas por mim.
As limitações sentidas neste processo foram o facto de a turma ser bastante turbulenta,
podendo ter atitudes imprevisíveis; também a intervenção ser no mês de janeiro de forma
contínua e próximo do final do semestre e por a matéria que me foi apresentada ser-me
desconhecida inicialmente.
Feito um apanhado geral das aulas e da avaliação final feita pelos alunos das minhas
aulas, posso aferir que o resultado foi positivo. A aposta em interação criou mais motivação para
os assuntos lecionados e de uma forma geral colaboraram quando interpelados. Houve alunos
que evoluíram positivamente ao longo das aulas demonstrando que estavam a aprender. Apenas
os trabalhos em grupo não foram suficientes para tornar os alunos mais colaborativos.
v
vi
ABSTRACT
Interactive lessons using exhibition: A methodology to the teaching Python
programming language
The methodology used during my pedagogical intervention resorted to the exhibition in
order to present some concepts of the Python programming language, which is the learning
subject, alternating with the interaction and complementing with problem solving in development
programs using this language.
This work was performed in a 10 students group from a 21 student’s class taking the
vocational course Técnico de Gestão e Programação de Sistemas Informáticos, in the 12th year.
The discipline was designated as Programação e Sistemas de Informação. It lasted for 16
continuous lessons of 90 minutes.
The aims pursued to bet on interaction were to make these students more collaborative
and motivated. However, essentially verify that their learning was consolidated and that they have
acquired new skills.
We applied 3 online questionnaires, an initial were applied to establish the existing
knowledge among other subjects and two at the end, where one of them intended to ascertain
the learning achieved and the other to assess the lessons taught by me.
The limitations felt in this process was the fact that the class was quite turbulent and had
unpredictable attitudes; as well as the fact that the intervention was carried out in January in a
continuous way and near the end of the semester and also the subject to teach was unknown to
me.
As an overview of the classes and the final evaluation made by the students, I can verify
that the result was positive. The investment in the interaction created more motivation for the
subjects taught and in general the students collaborated when asked. There were students who
developed positively during the lessons demonstrating that they were learning. Only the group
work were not enough to make more collaborative students.
vii
viii
ÍNDICE GERAL
Introdução .............................................................................................................................. 13
Capítulo I – Enquadramento teórico ........................................................................................ 15
1.1
Abordagem teórica .................................................................................................. 15
1.1.1
Exposição de conteúdos: uma necessidade?..................................................... 15
1.1.2
A exposição e a interação nas aulas de programação ....................................... 16
1.1.3
Interação ......................................................................................................... 17
1.1.3.1 Interação do aluno com o computador ......................................................... 17
1.1.3.2 Interação dos alunos entre si e com o professor ........................................... 17
1.1.4
A importância da programação para o desenvolvimento do pensamento
computacional ................................................................................................................ 19
1.1.5
A linguagem de programação Python ............................................................... 20
Capítulo II – Contexto e plano geral de intervenção ................................................................. 23
2.1
Contexto da intervenção .......................................................................................... 23
2.1.1
Caraterização da escola ................................................................................... 23
2.1.2
Caraterização da turma ................................................................................... 24
2.1.3
Caraterização da disciplina .............................................................................. 25
2.2
Plano geral da intervenção....................................................................................... 26
2.2.1
Objetivos ......................................................................................................... 26
2.2.2
Técnicas e instrumentos de recolha de dados .................................................. 26
2.2.3
Estratégias de intervenção ............................................................................... 27
Capítulo III - Desenvolvimento e avaliação da intervenção ........................................................ 28
3.1
Ferramentas educativas .......................................................................................... 28
3.1.1
Google Drive .................................................................................................... 28
3.1.2
Microsoft PowerPoint ....................................................................................... 29
3.1.3
Interpretador do Python ................................................................................... 30
3.2
Aulas observadas .................................................................................................... 31
3.3
Levantamento de requisitos ..................................................................................... 33
3.4
Implementação e avaliação da ação ........................................................................ 35
3.4.1
Calendarização das atividades realizadas ......................................................... 35
3.4.2
Recursos utilizados e elementos de avaliação ................................................... 38
ix
3.4.3
Da aula 1 até à aula 12 e aula 14 – Aulas não assistidas ................................. 39
3.4.4
Aula 13, aula 15 e aula 16 - Aulas assistidas ................................................... 61
3.4.5
Reflexão final ................................................................................................... 71
3.5
Análise da intervenção ............................................................................................. 72
Capítulo IV – Considerações finais .......................................................................................... 77
4.1
Conclusões ............................................................................................................. 77
4.2
Limitações .............................................................................................................. 78
4.3
Reflexão sobre o projeto e aprendizagens ................................................................ 79
Referências bibliográficas........................................................................................................ 81
Anexos ................................................................................................................................... 83
Anexo 1: Planificação do módulo 17 E ................................................................................ 83
Anexo 2: Grelha de observação dos alunos .......................................................................... 85
Anexo 3: Planos de aula das aulas observadas pelos supervisores ....................................... 86
Anexo 4: Questionário inicial sobre levantamento de requisitos ............................................ 92
Anexo 5: Questionário sobre as aprendizagens realizadas pelos alunos ................................ 95
Anexo 6: Questionário sobre a avaliação final feita pelos alunos das minhas aulas ............... 96
Anexo 7: Código do programa sobre o problema “Jornada de futebol” ................................. 98
x
ÍNDICE DE FIGURAS
Figura 1 - Escola Secundária Alberto Sampaio ......................................................................... 23
Figura 2 - Ícone do Google Drive na barra de tarefas ............................................................... 28
Figura 3 - Google Drive - Partilha de material com os alunos .................................................... 29
Figura 4 - Google Drive - Partilha de pastas individuais para colocar TPC's ............................... 29
Figura 5 - Programa e interpretador interativo do Python ......................................................... 31
Figura 6 - Enunciado do problema "Serviço de restaurante" .................................................... 41
Figura 7 - Compilação do programa sobre o problema "Serviço de restaurante" ...................... 42
Figura 8 - Sintaxe geral da sequência de comandos if/elif/else................................................ 43
Figura 9 - Enunciado do problema "Média das notas de um aluno" ......................................... 44
Figura 10 - compilação do programa sobre o problema "Média das notas de um aluno" .......... 44
Figura 11 - Compilação do programa sobre o problema "Promoções no cinema" .................... 48
Figura 12 - Compilação do programa sobre o problema "Soma e média de um conjunto de
números" ............................................................................................................................... 49
Figura 13 - Enunciado do problema "Exame da turma" ........................................................... 50
Figura 14 - Compilação do programa sobre o problema "Exame da turma" ............................. 52
Figura 15 - Compilação do programa sobre o problema "Tabuada sem formatação"................ 53
Figura 16 - Compilação do programa sobre o problema "Tabuada com formatação" com dois
dígitos .................................................................................................................................... 54
Figura 17 - compilação do programa sobre o problema "Tabuada com formatação" com três
dígitos .................................................................................................................................... 54
Figura 18 - Compilação do programa sobre o problema "Contador de carateres" ..................... 56
Figura 19 - Exemplo de indexação em strings .......................................................................... 56
Figura 20 - Exemplos de utilização de slicing sobre strings ...................................................... 57
Figura 21 - Compilação do programa sobre o problema "Nome em escada"............................ 58
Figura 22 - Compilação do programa sobre o problema "Teste de palíndromo" ....................... 60
Figura 23 - Compilação do programa sobre o problema "Inteiro para romano" ........................ 60
Figura 24 - Compilação do programa sobre o problema "Conta e imprime consoantes" ........... 62
Figura 25 - Compilação do programa sobre o problema "Soma quadrados" ............................ 63
Figura 26 - Enunciado do problema "Investigação do crime" ................................................... 65
Figura 27 - Compilação do programa sobre o problema "Investigação do crime" ..................... 65
xi
Figura 28 - Compilação do programa sobre o problema "Jornada de futebol" .......................... 69
ÍNDICE DE TABELAS
Tabela 1 - Comparação de código da linguagem de programação C com a linguagem de
programação Python............................................................................................................... 21
Tabela 2 - Apresentações no ensino da linguagem de programação Python ............................. 30
Tabela 3 - Calendarização das atividades realizadas ................................................................ 35
Tabela 4 - Problema “Promoções no cinema” ......................................................................... 47
ÍNDICE DE GRÁFICOS
Gráfico 1 - Resposta à questão "Realizei as tarefas que me foram indicadas?" ......................... 73
Gráfico 2 - Resposta à questão "Gostei da forma como as aulas foram lecionadas?" ................ 74
Gráfico 3 - Resposta à questão "Gostei das atividades que me foram propostas?" .................... 74
Gráfico 4 - Resposta à questão "A professora tirou as minhas dúvidas?" .................................. 75
Gráfico 5 - Resposta à questão "A professora criou um ambiente de interatividade?" ............... 75
Gráfico 6 - Resposta á questão "Fiquei motivado para programar em Python?" ........................ 76
Gráfico 7 - Resposta à questão "Aumentei a minha autonomia no desenvolvimento de programas
em Python?" ........................................................................................................................... 76
xii
INTRODUÇÃO
Este trabalho foi realizado no âmbito da Unidade Curricular Estágio profissional, do
Mestrado em Ensino da Informática do Instituto da Educação da Universidade do Minho.
A minha intervenção pedagógica baseou-se no ensino da linguagem de programação
Python. Ao mesmo tempo que ia expondo alguns conceitos utilizei a interatividade para promover
a discussão de pontos de vista no desenvolvimento das tarefas e troca de ideias entre os colegas
para a resolução de um dado problema. A realização de trabalhos de grupo teve como finalidade
a colaboração para um mesmo objetivo.
A linguagem de programação Python é uma linguagem de alto nível e uma linguagem
orientada a objetos como a linguagem de programação Java. É fácil de utilizar e por isso
também é fácil de aprender em comparação com outras linguagens como é o caso da
linguagem C. Segundo Papert (1980) “Uma linguagem de programação é como uma língua
natural humana, que favorece determinadas metáforas, imagens e formas de pensar.” (p. 34)
O meu projeto de intervenção foi colocado em prática na Escola Secundária Alberto
Sampaio, uma escola do centro da cidade de Braga. Era uma escola bem equipada com
computadores, tendo uma média de uma computador por aluno.
Realizei a minha intervenção num turno de 10 alunos que pertenciam a uma turma de 21
alunos, estando esta dividida em dois turnos. Era uma turma reconhecida pelo seu mau
comportamento, segundo informações recolhidas. Lecionei uma parte de um módulo da
disciplina Programação e Sistemas de Informação do curso profissional Técnico de Gestão e
Programação de Sistemas Informáticos do 12º ano, desde o dia 8 de janeiro de 2014 a 29 de
janeiro de 2014, com cinco blocos/aulas semanais de 90 minutos, num total de 16 blocos.
As principais limitações deste projeto foram: 1) o facto de ter sido colocado em prática
próximo do final do semestre, criando dificuldades no acompanhamento de outras Unidades
Curriculares do curso; 2) ser uma turma difícil em termos de comportamento, dificultando a
lecionação das matérias; e 3) a falta de tempo para me preparar para lecionar um conteúdo
novo.
Este relatório está organizado em quatro capítulos.
No primeiro capítulo encontra-se o enquadramento teórico, onde é demostrada a base
para a escolha dos métodos utilizados na lecionação das minhas aulas. É também apresentada
a importância da aprendizagem de uma linguagem de programação, sendo um meio para
13
desenvolver o pensamento computacional. Por fim são apresentadas as caraterísticas da
linguagem de programação Python.
No segundo capítulo é descrito o contexto de intervenção, a escola, a turma e a disciplina
onde vou intervir. Também são apresentados os objetivos pretendidos, as técnicas utilizadas
para a recolha da informação e as estratégias aplicadas.
No terceiro capítulo é desenvolvida e avaliada a intervenção pedagógica. São referidas as
ferramentas utilizadas durante as aulas e é apresentada a informação recolhida antes da
intervenção. É também realizada uma descrição aula a aula abordando os respetivos resultados
e reflexões, concluindo com uma reflexão final. Por fim, é feita a análise da intervenção com a
apresentação dos resultados dos questionários aplicados à turma.
Finalmente no quarto capítulo são apresentadas as considerações finais, onde são
relatadas as limitações/dificuldades encontradas, as conclusões e a reflexão sobre o projeto e as
aprendizagens adquiridas ao longo do processo.
14
CAPÍTULO I – ENQUADRAMENTO TEÓRICO
1.1 Abordagem teórica
Neste ponto vou desenvolver os princípios teóricos que segui e que considerei adequados
para o ensino de uma linguagem de programação, dado o contexto disciplinar onde iria colocar
em prática essas intenções.
Seymour Papert defende a importância da interação do aluno com o computador já que
promove o seu desenvolvimento cognitivo, neste caso ao programar com a linguagem de
programação LOGO. Nesta mesma lógica, programar na linguagem de programação Python vai
ao encontro dos mesmos objetivos.
Recorri ao método expositivo nas minhas aulas por considerar que nos casos em que há a
tendência para a distração seria uma estratégia para centrar a atenção dos alunos. Ribeiro
(2012) e Crato (2006) confirmam esta perspetiva. A exposição foi intercalada com interação de
modo a envolver os alunos para os assuntos da aula. Esta estratégia foi utilizada para obrigar os
alunos a pensar e ao mesmo tempo verificar se estavam atentos. Apostei ainda na interação
entre eles nas tarefas em grupo para incentivar a partilha de conhecimentos e a ajuda entre os
que têm mais e os que têm menos capacidades de aprender.
Por fim abordo a linguagem de programação Python, que foi o tema das minhas aulas.
Apresento alguns conceitos, caraterísticas, vantagens na utilização e exemplos de aplicação.
1.1.1 Exposição de conteúdos: uma necessidade?
Considero que utilizar unicamente métodos ativos de aprendizagem nem sempre acaba
por dar os melhores resultados, por exemplo quando se estiver a aplicar a alunos que estão
desmotivados pela escola e pela educação. Os métodos de ensino construtivistas, como refere
Jonassen (2007), são eficazes quando os alunos têm objetivos.
Os alunos com quem trabalhei esperam o apoio do(a) professor(a) para ganharem alguma
motivação para a realização de tarefas. Nestes casos, acredito que se lhes tivesse pedido para
fazerem a procura da informação utilizando apenas métodos ativos, resultaria em atitudes de
desinteresse como observei em algumas aulas. Portanto, na minha intervenção pedagógica,
dada a turma em questão e dado o tipo de matéria, optei por métodos que considerei mais
adequados para captar maior interesse por parte dos alunos pelos assuntos a serem lecionados
15
com o objetivo de trabalhar a informação da melhor forma. Ou seja, adequei o método ao
contexto.
Com o objetivo de ter alunos mais atentos aos assuntos da aula, Ribeiro (2012) refere que
as suas aulas “têm sido (quase) sempre expositivas. (…) Evitam-se atitudes de crianças e
adolescentes exibicionistas, mestres no bloqueio do discurso dos docentes.” (p. 69) E ainda
acrescenta que “o método expositivo torna também a gestão de conteúdos bem mais objetiva e
linear. Poupa tempo. Torna mais raro o álibi da falta de tempo para cumprir programas.” (p. 72)
A utilização do método expositivo é útil para a “introdução de um tema tendo em vista
despertar interesse para um assunto ou fornecer diretrizes para a realização de tarefas
orientadas pelos métodos ativos.” (Pinheiro & Ramos, 2005, p. 30), Ou seja, neste caso
particular pretendi introduzir conceitos da linguagem de programação para que os alunos
tivessem as noções necessárias para posteriormente poderem desenvolver os programas
propostos.
O Ministério da Educação elaborou um programa em 2005 para ensino de linguagens de
programação e em relação à metodologia a adotar é referido que “A metodologia a seguir nesta
disciplina será intercalar exposições teóricas com a resolução de exercícios práticos em
microcomputador.” (p. 6) Assim constatei que a metodologia que adotei não estaria
desadequada, uma vez que lecionei uma linguagem de programação.
1.1.2 A exposição e a interação nas aulas de programação
Considero demasiado cansativo o ensino baseado essencialmente em exposição, em que
se dá poucas oportunidades de intervenção dos alunos. Como o tema a lecionar era uma
linguagem de programação, considerei que seria adequado expor alguns conceitos teóricos, no
caso a sintaxe da linguagem e exemplos em que diversas vezes comparava com uma linguagem
de programação que eles já conheciam, alternando com questões que lhes ia colocando, desse
modo interagindo com eles com o objetivo de os fazer pensar. Segundo Arends (1995) “o uso
adequado do modelo da exposição é situacional, ou seja, o seu uso depende do objectivo que o
professor pretende atingir e dos alunos com quem está a trabalhar.” (p. 269)
Na minha opinião, o que torna o ensino mais motivador é a alternância de um conjunto de
métodos, uma vez que “não se pode memorizar tudo, tal como não se deve esquecer a
memorização. Deve-se desenvolver o raciocínio e o gosto pela compreensão dos conceitos
complexos, tal como se deve desenvolver a memória e a automatização de alguns
16
procedimentos. Ou seja, devem-se usar técnicas variadas e apontar objetivos variados, ao
contrário do que defendem os teóricos do construtivismo dogmático.” (Crato, 2006, p.13).
Embora algumas opiniões façam acreditar que o método expositivo é algo negativo para
se utilizar no ensino e que os métodos ativos são basicamente aqueles que se deve seguir,
Arends afirma que “os efeitos na instrução do modelo baseado na exposição são claros e
diretos, nomeadamente para ajudar os alunos a adquirir, a assimilar e a reter a informação.”
(1995, p. 280).
1.1.3 Interação
Na última aula a que assisti, antes da minha intervenção pedagógica, apliquei um
questionário aos alunos onde solicitava, entre outros aspetos, para sugerirem uma estratégia
que os motivasse para a programação. De entre as respostas dadas, a que considerei mais
relevante foi a de um aluno que referiu que o motivavam aulas interativas. Assim, optei por usar
também esse método para conseguir captar o interesse dos alunos para os assuntos da aula,
uma vez que estes facilmente se distraíam e se deixavam levar por assuntos que saíam fora do
âmbito da aula.
1.1.3.1
Interação do aluno com o computador
De acordo com Silva (2006) “a “sociedade interativa” é aquela que se relaciona com a
comunicação “sob as condições da tecnologia interativa com base em computador” (p. 58).
O que se pretendia era ensinar uma linguagem de programação, neste caso a linguagem
de programação Python, onde era proporcionada interação com o computador onde Papert
(1980) refere que os computadores podem acelerar o processo de desenvolvimento cognitivo,
alterando a fronteira entre o concreto e o formal e permitindo que as crianças façam a transição
para o pensamento formal numa idade bem anterior ao que se pensava. Ou seja, a interação
com o computador apresenta-se como um ambiente potenciador de aprendizagem.
1.1.3.2
Interação dos alunos entre si e com o professor
Segundo Silva (2006) “a escola não se encontra em sintonia com a emergência da
interatividade. Encontra-se alheia ao espírito do tempo e mantém-se fechada em si mesma, em
seus rituais de transmissão, quando o seu entorno modifica-se fundamentalmente em nova
dimensão comunicacional.” (p. 68).
17
Uma vez que o método expositivo limita-se a transmitir a informação, é importante utilizar
a interação de forma alternada, de modo a ativar o pensamento dos alunos sobre os conteúdos,
ou seja, “a comunicação interativa é, portanto, o que enfatizo como desafio para a educação
centrada no paradigma da transmissão.” (Silva, 2006, p.69)
Quando o professor coloca questões aos alunos, está a interagir com eles, ou seja a criar
um ambiente de discurso na sala de aula, assim definido por Arends (1995):
O termo discurso será utilizado para fornecer uma perspetiva geral
sobre a comunicação na sala de aula. (…) [e] (…) pode ser visto como uma
exteriorização do pensamento, isto é, uma revelação dos nossos
pensamentos invisíveis. Assim, através do discurso público, os professores
obtêm uma janela parcial para observarem os processos de pensamento dos
seus alunos e um contexto para corrigirem e darem feedback quando
observarem raciocínios errados ou incompletos. (p. 416)
Dessa forma é possível detetar e resolver a não compreensão dos conteúdos por parte
dos alunos, deixando claro aquilo que possivelmente não tinham compreendido, antes de serem
questionados. Assim, “os alunos têm aí configurado um espaço de diálogo, participação e
aprendizagem. O professor não distribui o conhecimento. Ele disponibiliza elos probabilísticos e
móveis que pressupõem o trabalho de finalização dos alunos ou campos de possibilidades que
motivam as intervenções dos alunos.” (Silva, 2006, pp. 185-186)
Os alunos interagem entre eles quando, por exemplo, realizam trabalhos em grupo.
Têm a possibilidade de aprender e melhorar os relacionamentos sociais. De acordo com
Arends (1995) “um dos aspectos importantes da aprendizagem cooperativa é o de que,
ao ajudar a promover o comportamento cooperativo e ao desenvolver melhores relações
grupais entre os alunos, está simultaneamente a ajudar os alunos na aprendizagem
escolar.” (p. 369).
O aluno consegue aprender melhor em interação com colegas com mais
capacidades do que sozinho. A este propósito, Vygotsky (1978) refere que “aquilo que a
criança consegue fazer com a ajuda dos outros poderia ser de alguma maneira, muito
18
mais indicativo do seu desenvolvimento mental do que aquilo que consegue fazer
sozinha.” (p. 85)
Mais importante do que a interação com o computador será a interação entre as
pessoas presentes na sala de aula como fator proporcionador de motivação e
aprendizagem, desta forma Arends (1995) refere que “ (…) a interação social na sala de
aula é um resultado de pessoas individualmente motivadas respondendo umas às outras
num contexto social (…) e produz determinados comportamentos dos alunos para a
aprendizagem social e escolar.” (p.111)
1.1.4 A importância da programação para o desenvolvimento do
pensamento computacional
Na programação a aprendizagem não é adquirida de forma mecânica, não se transmite
informação que seja memorizada de forma automática, em cada problema é necessário ajustar
os conhecimentos anteriores à nova situação.
O pensamento computacional é uma caraterística que é desenvolvida no aluno com o
apoio do computador, sendo definido por Wing (2006) como “uma maneira de pensar humana e
não dos computadores. O Pensamento computacional é uma forma humana de resolver
problemas e não uma forma de tentar que os seres humanos pensem como computadores.” (p.
35).
Ainda em relação ao conceito “pensamento computacional” Ramos (2013) acrescenta
características como
(…) formular problemas numa forma que permita utilizar o
computador e outras ferramentas para resolver, organizar e analisar dados
de forma lógica, são aspetos que estão envolvidos no pensamento
computacional. Representar dados através de abstrações como por exemplo
modelos e simulações. Automatizar soluções através do pensamento
algorítmico. Identificar, analisar e implementar soluções possíveis.
Generalizar e transferir estes processos para resolver uma grande variedade
de situações.
19
Para desenvolver o pensamento computacional pode-se utilizar um conjunto de aplicações
ou programas, sendo que com estas ferramentas o aluno tem capacidade de se tornar mais
autónomo, mais criativo e ir assim adquirindo uma atitude mais crítica em relação ao que o
rodeia.
Ramos (2013) também considera que “essas capacidades servem para descrever e
explicar situações complexas, é mais uma linguagem que podemos usar para compreender o
universo, os seus fenómenos e os seus processos complexos, mas também para compreender e
usar no universo humano e social na resolução dos problemas que enfrentamos.” (s/p), Ou seja,
o “pensamento computacional” permite para compreender o ser humano, os problemas sociais,
os fenómenos do universo e sua complexidade e, assim, ajuda a resolver os problemas a eles
associados.
À semelhança de outras aplicações referidas por Jonassen (2007) como micromundos,
onde se podem representar simulações de fenómenos do mundo real, ao utilizar uma linguagem
de programação “os alunos aprendem fazendo, em vez de apenas observarem ou ouvirem uma
descrição de como algo funciona. Por esta razão, os micromundos tendem a ser intrinsecamente
mais motivantes do que as descrições tradicionais de atividades” (p. 179)
Portanto, ao utilizar uma linguagem de programação, o aluno desenvolve a capacidade de
pensar ou raciocinar ao construir programas, uma vez que conhecendo os conceitos da
linguagem pode construir o programa dando um cunho pessoal, exibindo a sua criatividade.
Sendo uma linguagem de programação uma forma de desenvolver o pensamento
computacional, esta pode ser considerada uma ferramenta cognitiva, uma vez que desenvolve as
capacidades cognitivas do aluno, e assim “aprender com as ferramentas cognitivas exige que os
alunos pensem com mais empenho sobre a matéria que está a ser estudada do que pensariam
se as não usassem.” (Jonassen, 2007, p. 22)
1.1.5 A linguagem de programação Python
Morais e Pires explicam assim a origem desta linguagem: “Python é uma linguagem de
programação criada por Guido Van Rossum no início da década de 90 (…) ” e o nome vem do
facto do seu criador ser fã série britânica Monty Python. (, 2002, p. 1)
O motivo de ter sido criada foi porque “Guido sentiu falta de uma linguagem de mais alto
nível que o C (…), mas que fosse mais poderosa do que as linguagens de shell scripting (…).
Para preencher essa lacuna, resolveu criar o Python.” (idem)
20
Algumas das caraterísticas desta linguagem são: é fácil de utilizar; incentiva à utilização de
metodologias de programação corretas, tornando os programas muito legíveis e fáceis de
compreender. É orientada a objetos, assim como a linguagem de programação Java. É uma
linguagem multiplataforma, ou seja, é possível executar em vários sistemas operativos, como
Windows, Linux, Macintosh, etc. (Morais & Pires, 2002).
Esta é uma linguagem que oferece mais vantagens do que desvantagens, uma vez que é
uma das melhores escolhas para programadores que procuram robustez e produtividade, é fácil
de aprender, tem disponíveis na sua biblioteca módulos prontos para tarefas como conexão a
sistemas de herança, webservices, tratamento de imagem, integração com aplicativos de
produtividade e com todo tipo de aplicações que se possa imaginar. É útil na criação de páginas
web e no acesso a bases de dados. Por exemplo, a linguagem Perl está ao mesmo nível do
1
Python, no entanto à medida que um programa em Perl cresce torna-se cada vez mais difícil de
ler e compreender (Morais & Pires, 2002).
Os alunos com que trabalhei já tinham experimentado anteriormente a linguagem C e
puderam fazer a comparação com um código simples que dá como resultado a impressão de
uma frase no ecrã. Na linguagem C, são precisas algumas linhas de código, enquanto que em
Python basta uma linha de código, como se pode observar na tabela seguinte.
Tabela 1 - Comparação de código da linguagem de programação C com a linguagem de programação Python
Impressão da frase “Olá Mundo!”
Linguagem de programação C
Linguagem de programação Python
include <stdio.h>
print “Olá Mundo!”
int main() {
printf(“Olá Mundo!\n”)
return 0;
}
Esta linguagem é utilizada nos sites do Google, do Youtube, nos programas da NASA, no
programa Gimp. Foi utilizada para a criação de um conjunto de jogos, como por exemplo Word
of Tanks. Também foi utilizada para a criação dos efeitos especiais do filme Star Wars.
1
http://www.python.org
2
http://powerpython.wordpress.com/2012/03/16/programas-e-jogos-feitos-em-python/
21
2
22
CAPÍTULO II – CONTEXTO E PLANO GERAL DE INTERVENÇÃO
2.1 Contexto da intervenção
2.1.1 Caraterização da escola
O meu estágio realizou-se na Escola Secundária Alberto Sampaio, situada na Rua Álvaro
Carneiro, freguesia de S. Lázaro no conselho de Braga.
Figura 1 - Escola Secundária Alberto Sampaio
Entre 2009 e 2010 as instalações da escola foram objeto de requalificação, com o
objetivo de reunir as condições essenciais ao desenvolvimento da ação educativa. (IGEC, 2011,
p. 2)
Ainda segundo IGEC (2011) “Para responder à heterogeneidade da comunidade educativa
que serve, a Escola apresenta na sua oferta formativa todas as modalidades de formação de
nível secundário: cursos científico-humanísticos; cursos profissionais; cursos de educação e
formação de adultos; formações modulares; reconhecimento, validação e certificação de
competências; e português para todos, orientado para estrangeiros.” (p. 2), Ou seja, a Escola
Secundária Alberto Sampaio tem uma vasta oferta formativa, incluindo Oficinas de Teatro,
Oficinas de Artes, Oficinas de Música entre outras.
De acordo com IGEC (2011), “a população escolar, em 2011-2012, é constituída por
1622 alunos. Destes, 1206 (47 turmas) frequentam os cursos científicos-humanísticos
regulares, 299 (25 turmas) os cursos profissionais e 117 (nove turmas) os cursos de educação e
formação de adultos. […] A equipa docente é constituída por 197 professores. […] O pessoal não
docente é constituído por 42 trabalhadores.” (p. 2)
Segundo IGEC (2011), no ano letivo 2010-2011, a idade média dos alunos encontra-se
abaixo da média nacional, constatando-se uma baixa incidência de retenções no percurso
escolar dos alunos que frequentam a escola. (p. 2)
23
O tipo de público que a Escola Secundária Alberto Sampaio recebe é de variados extratos
sociais conforme é referido em ESAS (2011):
A ESAS capta uma população estudantil muito diversificada, servindo,
fundamentalmente, a zona centro e sul da cidade. Contudo, nos últimos
anos, tem-se acentuado a tendência para uma maior diversificação,
integrando a escola alunos provenientes de todas as freguesias da cidade. Do
ponto de vista sociológico, esta escola integra alunos oriundos de famílias de
nível social médio-alto e alto, mas também, numa parcela significativa,
alunos oriundos de famílias de nível social médio-baixo e baixo, portadores de
níveis de instrução muito baixos. Na proximidade da escola, na zona oeste e
sul, situam-se alguns dos bairros mais degradados da cidade e com maiores
problemas em matéria de segurança pública. (p. 14)
Em termos de equipamento informático, verifiquei que esta Escola está bem
equipada, servindo convenientemente os alunos em termos informáticos, tendo em média
um computador para cada aluno.
2.1.2 Caraterização da turma
Esta turma frequenta o 12º ano do curso de Técnico de Gestão e Programação de
Sistemas Informáticos, é constituída por 21 alunos, dos quais 20 são rapazes e uma é
rapariga. A disciplina onde realizei o meu estágio é designada por Programação e
Sistemas de Informação. Esta disciplina está dividida em dois turnos, um com 11 alunos e
outro com 10 alunos, sendo este último aquele onde realizei o meu estágio. Estes 10
alunos eram todos do sexo masculino.
Relativamente às caraterísticas da turma, de acordo com a informação fornecida
pelo Diretor de Turma, seis dos alunos são os próprios Encarregados de Educação.
Apenas dois Encarregados de Educação estão desempregados, sendo que a maior parte
deles estão contratados e apenas sete estão efetivos. As suas profissões variam muito,
sendo que a de serralheiro e assistente operacional são as mais representadas. Verificase, pois, uma baixa escolaridade dos Encarregados de Educação.
24
Em relação aos alunos, a maior parte tem dezassete anos, no entanto, existem
alguns alunos já fora da escolaridade obrigatória. A sua média de idades é 18,1 anos,
sendo a mesma média de idades no turno onde estagiei, informação que obtive a partir
dos dados do questionário que apliquei ao turno.
No que diz respeito à vida escolar, sete destes alunos já repetiram pelo menos um
ano letivo. No entanto, nenhum deles é repetente no 12º ano e todos estes alunos
andaram nesta Escola no ano anterior.
De referir também, que apenas um aluno afirma que estuda todos os dias. As suas
disciplinas preferidas são Educação Física e Programação e Sistemas de Informação,
enquanto que as disciplinas em que os alunos sentem mais dificuldade são Inglês e
Programação e Sistemas de Informação.
Questionado o turno onde estagiei, verifiquei que em relação à ocupação dos
tempos livres, quase todos os alunos utilizam a Internet, gostam de ver filmes na televisão
e ouvir música. Todos referiram que possuem computador e internet em casa.
Quanto ao comportamento durante as aulas, e segundo Ata do Conselho de Turma
(2013), do terceiro período, é declarado a nível de comportamento que os alunos são mal
comportados, perturbando o bom funcionamento das aulas. Verifiquei este facto nas aulas
que observei e durante a minha intervenção pedagógica; havia falta de respeito pela
autoridade do professor, eram bastante barulhentos e manifestavam pouco interesse na
realização das tarefas.
2.1.3 Caraterização da disciplina
Conforme DGFV (2005), “A disciplina de Programação e Sistemas de Informação,
vulgarmente designada por PSI, integra a componente de formação técnica dos cursos
profissionais, de forma a garantir aos jovens a aprendizagem de técnicas de programação
e desenvolvimento de sistemas informáticos, indispensáveis ao sucesso pessoal e
profissional nesta área.” (p. 2)
Esta disciplina é composta por vários módulos ao longo dos três anos do curso,
sendo que no 12º ano é constituída por quatro módulos. A minha intervenção sucede no
3º módulo, módulo opcional da lista dos módulos opcionais definidos no programa da
disciplina, designado por Ferramentas de desenvolvimento de páginas web. A planificação
deste módulo encontra-se em anexo.
25
Quanto às competências desenvolvidas neste módulo, e segundo DGFV, (2005)
“este módulo destina-se a dotar os alunos de conhecimentos de nível mais avançado na
utilização da ferramenta de desenvolvimento de páginas web, para que desenvolvam sites
profissionais mais completos, com ligações a bases de dados, permitindo evoluir de um
site estático para um site dinâmico. Pretende-se também interligar a ferramenta de
desenvolvimento com outras aplicações.” (p. 51). A ferramenta definida para
desenvolvimento de páginas web é a linguagem de programação Python.
2.2 Plano geral da intervenção
2.2.1 Objetivos
O que pretendia como resultado era verificar no final se estes alunos se tornaram
autónomos na construção de programas, seja na linguagem de programação Python ou
em outras linguagens de programação, uma vez que cada problema é sempre diferente
do anterior, exigindo que alie um conhecimento prévio ao novo conhecimento. Ao utilizar
interação durante as aulas, pretendi verificar no final se estes alunos se tornaram mais
colaborativos na realização de tarefas.
Foi também minha intenção verificar se ficaram mais motivados para a linguagem
de programação Python bem como apurar se as aprendizagens dos alunos foram
consolidadas e eles adquiriram novas competências.
2.2.2 Técnicas e instrumentos de recolha de dados
Os instrumentos utilizados para a recolha de dados foram três questionários online
construídos na ferramenta Google Drive. Os alunos tinham acesso através de um link para
esse questionário criado no final da construção do mesmo e as respostas eram enviadas
para um ficheiro do tipo folha de cálculo e colocadas na minha conta do Google Drive.
O primeiro questionário foi aplicado à turma antes de iniciar a minha intervenção
pedagógica, com o objetivo de analisar os seus conhecimentos prévios, dificuldades na
área da informática, gosto por programação, as suas aspirações em termos de futuro
profissional, entres outras questões.
No final da minha intervenção pedagógica apliquei dois questionários. Um deles
apliquei-o no último dia da minha intervenção pedagógica e com isso pretendi analisar as
aprendizagens que eles realizaram, isto é, saber se tiverem dificuldades com as matérias
26
que lecionei e se a resposta fosse positiva pedia-lhes que referissem qual a dificuldade. O
último questionário tinha como objetivo verificar a forma como os alunos avaliaram as
minhas aulas, onde questionava se realizaram as tarefas propostas, se gostaram da forma
como foram lecionadas, se lhes foram tiradas as dúvidas, se ficaram motivados para a
linguagem de programação Python, entre outras.
2.2.3 Estratégias de intervenção
Depois de aplicar o questionário anteriormente à minha intervenção pedagógica, fiz
uma análise, onde verifiquei os conhecimentos prévios dos alunos, neste caso
conhecimentos sobre linguagens de programação. Dessa análise foi possível também
fazer comparações de algumas situações com uma linguagem que eles tiveram e que
também era conhecida para mim, de modo a que a aprendizagem pudesse ser
concretizada e assim incorporar um novo conhecimento no anterior.
Através da questão em que pedi para sugerir uma estratégia que motivasse para
aprender programação, de entre as poucas respostas aquela que considerei relevante
para adotar na minha intervenção pedagógica foi a que referia a interação como algo
que cria motivação para aprender programação. Assim, resolvi apostar na interação nas
minhas aulas. Para além de haver interação com o computador na construção dos
programas, houve interação professora/aluno ao longo das apresentações de exemplos,
demonstrações e construção de programas de forma interativa, onde se questionam os
alunos com o objetivo de os fazer pensar. No que diz respeito à interação Silva (2001)
refere que “ o essencial não é a tecnologia, mas um novo estilo de pedagogia sustentado
por uma modalidade comunicacional que supõe interatividade, isto é, participação,
cooperação, bidirecionalidade e multiplicidade de conexões entre informações e atores
envolvidos.” (p. 15)
27
CAPÍTULO III - DESENVOLVIMENTO E AVALIAÇÃO DA INTERVENÇÃO
3.1 Ferramentas educativas
Esta secção apresenta uma breve caraterização das ferramentas utilizadas para
apoio à minha intervenção pedagógica.
3.1.1 Google Drive
O Google Drive é um serviço de armazenamento na nuvem, disponibilizado pela
Google em abril de 2012, considerado um concorrente à Dropbox. Permite aos
utilizadores armazenar, partilhar, editar e visualizar diferentes tipos de ficheiros e
sincronizá-los usando vários dispositivos a partir de múltiplos pontos de acesso com
terminais fixos ou móveis.
É OpenSource, ou seja é um serviço gratuito que oferece 15 GB de capacidade de
armazenamento, basta fazer o download e instalar, possibilitando o acesso aos ficheiros
através do ícone
que se encontra na barra de tarefas como se pode observar na
figura seguinte:
Figura 2 - Ícone do Google Drive na barra de tarefas
Ao instalar fica integrado com o Google Docs. Da mesma forma pode-se criar
documentos e trabalhar em grupo no mesmo documento e as alterações aparecem em
tempo real. Também determina-se quem pode ter acesso a determinados documentos
com as opções de partilha. A particularidade do Google Drive é a de poder manter os
vestígios das sucessivas versões dos documentos modificados. É também possível
reverter as alterações feitas durante os últimos 30 dias.3
Nas minhas aulas utilizei o Google Drive para disponibilizar aos alunos o programa
Python que os alunos deveriam instalar, um manual da linguagem para quem quisesse
aprender algo mais sobre a linguagem em horário não letivo, apresentações utilizadas nas
aulas e alguns programas desenvolvidos, como se pode observar a seguir (Fig. 3):
3
http://en.kioskea.net/faq/26485-discovering-and-using-google-drive, acedido em 8 de Janeiro de 2015
28
Figura 3 - Google Drive - Partilha de material com os alunos
Também utilizei esta ferramenta para criar pastas individuais partilhadas com cada
aluno, onde me depositariam programas/exercícios que resolviam como T.P.C. (Trabalho
Para Casa), como se pode observar na imagem seguinte (Fig. 4). No entanto, esta
intenção não produziu resultados, como se explica na secção 3.3.
Figura 4 - Google Drive - Partilha de pastas individuais para colocar TPC's
3.1.2 Microsoft PowerPoint
O Microsoft PowerPoint está incorporado no Microsoft Office. É um software que
permite a criação de materiais que podem ser apresentados por meio de um projetor. O
29
uso desses materiais serve para anunciar um relatório ou uma proposta sendo designado
de apresentação. Transitam de uma tela para a outra, como uma apresentação de slides.
Pode-se animar o texto e as ilustrações na tela, usando o recurso de animação, podendo
também adicionar-se efeitos de som e narração. Este software incorpora imagens, sons,
vídeos, textos e gráficos para criar uma apresentação interativa. Interage também com
outros produtos do Microsoft Office, como o Microsoft Word e Microsoft Excel.4
Utilizei esta ferramenta nas minhas aulas com o objetivo de apresentar alguns
conceitos teóricos, sintaxe e exemplos da linguagem Python, como se pode observar na
tabela seguinte que inclui slides onde é mostrada essa utilização:
Tabela 2 - Apresentações no ensino da linguagem de programação Python
Conceitos
Sintaxe
Exemplo
3.1.3 Interpretador do Python
Um interpretador é um programa que executa outros programas.
O interpretador do Python lê o código Python e executa as instruções que ele
contém. É um interpretador interativo sendo uma característica diferencial da linguagem,
porque há a possibilidade de testar e modificar funções antes de incluí-las nos programas.
Isso permite um grau de aprendizagem relativamente alto em relação às outras
linguagens.5
Como exemplo apresento um programa construído durante as aulas, em que sendo
dado um número inteiro entre 1 e 3999 se pretende obter como resultado o
4
http://www.businessdictionary.com/definition/Microsoft-PowerPoint.html
5
https://www.python.org/
30
correspondente em numeração romana. O código e o interpretador na forma interativa são
apresentados como se observa a seguir (Fig. 5):
Figura 5 - Programa e interpretador interativo do Python
3.2 Aulas observadas
A minha primeira visita à escola foi no dia 1 de novembro de 2013, passando a assistir às
aulas do professor cooperante a partir daí.
No total assisti a seis aulas lecionadas pelo professor cooperante, uma delas na turma
onde o colega de estágio Ricardo Carvalho realizou a sua intervenção pedagógica e cinco aulas
onde realizei a minha intervenção pedagógica.
A 5 de novembro de 2013 acompanhei o colega de estágio Ricardo Carvalho à primeira
aula que assistimos em conjunto, com professor cooperante a lecionar na turma onde o colega
realizou a sua intervenção pedagógica. Nessa aula os alunos estavam a apresentar trabalhos
sobre redes com projeção no computador do professor.
Na turma onde realizei a minha intervenção pedagógica concretizei as observações às
quintas-feiras desde 7 de novembro de 2013 até 12 de dezembro de 2013, exceto a quinta-feira
dia 28 de novembro.
A primeira aula que assisti, na turma onde tive a minha intervenção pedagógica foi a 7 de
novembro de 2013, com a presença do colega de estágio. Nessa aula os alunos estavam a
31
trabalhar com UML (Unified Modeling Language). O aluno J. F. foi ao quadro desenhar uma
tabela, ao mesmo tempo que manifestava ao professor cooperante desagrado pela tarefa.
Nestas aulas observadas estavam a ter o módulo 17C de opção, com a designação de
Metodologia de análise e desenvolvimento de sistemas, sendo o conteúdo sobre UML. Esta é
uma linguagem que se define como linguagem de modelagem que permite representar um
sistema de forma padronizada. O UML permite que os programadores visualizem o produto do
seu trabalho sobre a forma de diagramas padronizados. Os objetivos do UML são: especificação,
documentação, estruturação para sub-visualização e maior visualização lógica do
desenvolvimento completo de um sistema de informação.6
Comportamento observado
Em algumas situações gerava-se bastante confusão com barulho e gargalhadas fazendo
com que o professor cooperante acabasse por mandar algum deles para a rua.
Numa dada situação um aluno comentou algo que estava a observar pela janela, levando
outros colegas a vir do outro lado da sala juntar-se a eles para observar. O professor cooperante
mandou irem para os seus lugares, no entanto davam pouca importância à ordem do professor,
desobedecendo. Em algumas situações distraíam-se com jogos de computador, utilização do
telemóvel, entre outras coisas que não faziam parte do conteúdo sumariado.
Alguns entravam às vezes a cantar na sala de aula, numa atitude clara de desrespeito.
Num outro momento observavam fotos de alguém, onde comentavam ser uma pessoa da
escola. Numa aula o professor cooperante tirou o telemóvel de um aluno, e o aluno exaltou-se
com ele por esse facto, reclamando o telemóvel. Em geral chegavam atrasados, embora fosse
hora do almoço, chegavam depois do limite da tolerância.
“Por indisciplina entende-se a transgressão das normas escolares, prejudicando as
condições de aprendizagem, o ambiente de ensino ou o relacionamento das pessoas na escola.”
(Veiga, 2007, p. 15)
6
www.uml.org
32
O professor cooperante chegou a mandar fazerem o relatório para a PAP (Prova de
Aptidão Profissional), dois deles abriram o relatório, no entanto logo a seguir voltaram a fechar,
continuando com os jogos. Apenas um deles continuou a trabalhar no relatório.
Na penúltima aula que assisti, os alunos em geral, não fizeram trabalho útil, apenas o
aluno T. B. esteve a fazer um levantamento dos problemas dos computadores da sala de aula,
para depois serem resolvidos, por sugestão do professor cooperante.
Na última aula que assisti, dia 12 de dezembro de 2013 apliquei um inquérito à turma,
para daí perceber alguns conhecimentos prévios, ambições para o futuro, entre outros assuntos.
Aproveitei essas informações para aplicar na construção do projeto de intervenção. Os resultados
desse questionário são apresentados a seguir na secção 3.3.
3.3 Levantamento de requisitos
Na última aula observada, antes de iniciar a minha intervenção pedagógica, apliquei
um questionário online à turma/turno com o objetivo de me informar dos seus
conhecimentos prévios, a possibilidade de utilizar computador em casa, onde encontram
dificuldades, as pretensões para o final do curso, entre outros assuntos. Este questionário
encontra-se em anexo.
Conjunto de questões aplicadas:

Que idade tens?

Possuis computador em casa?

Possuis internet?

Quais as matérias na área da informática que tens mais dificuldades?

Quais as matérias que dominas melhor na área da informática?

Gostas de programar?

Tens alguma dificuldade em programação?

Se respondeste “sim” à questão anterior, explica de género é a tua
dificuldade.

Sugere uma estratégia que te motive para a programação.

O que ambicionas que este curso profissional te traga profissionalmente?

Pretendes atingir o ensino superior?

O que ambicionas para o futuro?
A este questionário responderam os 10 alunos da turma.
33
Quanto à resposta à primeira questão resultou uma média de idades de 18,1 anos
de idade, como também foi referido no capítulo II.
À segunda e à terceira questão, todos referiram que possuem computador e
internet em casa.
As cinco questões seguintes testam os conhecimentos prévios e como referem Coll
et al. (2001) “O fator mais importante que influi na aprendizagem, é aquilo que o aluno já
sabe. Isto deve ser averiguado e o ensino deve depender desses dados” (p. 66)
Quanto à questão “Quais as matérias na área da informática que tens mais
dificuldades?”, dois não responderam, outros dois afirmaram que tinham dificuldades em
quase tudo, um deles referiu que não tinha nenhuma dificuldade e os restantes cinco
referiram AJAX, Casos de uso, Redes, Redes de comunicação e Programação como as
suas dificuldades.
Em relação à questão “Quais as matérias que dominas melhor na área da
informática?”, um dos alunos não respondeu, dois afirmaram que não dominam nenhuma
matéria na área da informática, dois referiram “programação” como a matéria que
dominam melhor, um aluno referiu que domina melhor C# e outro além de C# também
referiu Redes. Um deles afirmou que domina melhor HTML (HyperText Markup Language),
outro aluno referiu “programação web” e o último afirmou que domina melhor PHP
(Personal Home Page), HTML e JavaScript.
Quanto à questão “Gostas de programar?”, oito dos alunos responderam “sim” e
dois responderam “não”.
Em relação à questão “Se respondeste “sim” à questão anterior, explica de género
é a tua dificuldade.”, apenas três responderam a esta questão, onde um deles mencionou
“um pouco de tudo”, outro aluno referiu “Lembrar os códigos” e o último acrescentou que
tem dificuldade em “Sintaxe, comandos e funções complexas”.
A questão “Sugere uma estratégia que te motive para a programação.” foi aquela
que pretendia que me orientasse para a minha estratégia de intervenção. Três dos alunos
não responderam, um deles afirmou “não sei”, outro aluno referiu “programação web” e
outro acrescentou como uma estratégia que o motivasse como “criação de programas
uteis”. Dois deles referiram que gostariam de ouvir música enquanto trabalham e o outro
34
aluno referiu que o motiva “Aulas interativas”. Assim, depois de analisar as respostas
considerei esta a mais relevante e que estaria adequada para colocar em prática.
Quanto à questão “O que ambicionas que este curso profissional te traga
profissionalmente?”, dois dos alunos não responderam e as oito respostas obtidas foram
“trabalhar em empresas, categoria”, “programação web”, “Capacidade de trabalho
independente de terceiros.”, “Dinheirinho”, “€”, “Pergunta que não possui resposta”,
“Preparação para o mundo do trabalho” e “Trabalho”.
Em relação à questão “Pretendes atingir o ensino superior?”, cinco dos alunos
responderam “não” e cinco responderam “sim”.
Finalmente na questão “O que ambicionas para o futuro?” dois dos alunos não
responderam e as respostas obtidas foram “Ser empresário de sucesso”, “trabalhar”,
“Dinheiro e mulheres”, ” Trabalhar”, “trabalho”, “Não sei”, ” Um trabalho estável e
desafiador.” e “Trabalhar”.
3.4 Implementação e avaliação da ação
3.4.1 Calendarização das atividades realizadas
Estratégias gerais:

Diálogo com os alunos;

Ensino de Conceitos;

Exposição dos conteúdos de forma interativa, alternado com questões aos alunos
e promovendo a discussão na sala de aula;

Utilização do programa Python para experimentar exemplos;

Interrogar os alunos ao desenvolver programas de modo a desenvolver o seu
raciocínio.
Tabela 3 - Calendarização das atividades realizadas
Aula
Duração
Data

1
90
minutos
Conteúdo
Conceitos teóricos da
linguagem Python;
8-01-2014

Instalação do programa
Python 2.7.6.
35

Atividades/Estratégias
Estratégias gerais.

Conceitos básicos da
linguagem;

2
3
4
5
90
minutos
aritméticos;
8-01-2014
90
minutos
9-01-2014
90
minutos
13-01-2014
90
minutos
13-01-2014

Variáveis – atribuição;

Tipos de dados.

Comando print;

Estratégias gerais;

Comando input;

Resolução de problemas

Criar um ficheiro .py;
utilizando os comandos print e

Abrir um ficheiro .py.
input.

90
minutos
Comandos if/elif/else.

Estratégias gerais;

Resolução de problemas
utilizando os comandos
if/elif/else.

6
Operadores lógicos e
15-01-2014
Conclusão da matéria

Estratégias gerais;
com utilização dos

Resolução de problemas
comandos if/elif/else.
utilizando os comandos
if/elif/else;

7
90
minutos
8
9
90
minutos
16-01-2014
20-01-2014

Resolução de problemas
utilizando o comando while.
while.
15-01-2014

90
minutos
Introdução do comando
Introdução ao tipo de

Estratégias gerais;
dados sequenciais –

Resolução de problemas
strings;
utilizando strings com o

Operadores + e *;
comando raw_input e utilizando

Comando raw_input.
os operadores + e *.

Tipos de dados
36

Estratégias gerais;
sequenciais – strings:

Interpolação.
10
90
minutos
Construção do programa da aula
anterior em conjunto com a
turma;
20-01-2014

Resolução de problemas
utilizando interpolação em
strings.

Indexação em strings;

Estratégias gerais;

Método len;

Resolução de um problema com

Códigos ASCII dos
carateres da tabela
11
90
minutos
22-01-2014


base na tabela ASCII;

Resolução de problemas
ASCII;
utilizando indexação, os métodos
Métodos mais utilizados
existentes e também utilizando
da classe String;
slicing.
Pesquisa dos métodos
da classe String.
12
13
90
minutos
90
minutos
22-01-2014

Fatiar/slicing strings.

Introdução ao tipo de

Estratégias gerais;
dados sequenciais –

Resolução de problemas fazendo
listas;
a alteração e inserção de valores

Operadores + e *;
em listas de tamanho definido.

Caraterísticas das
listas;
23-01-2014

Alterar (inserir,
remover, atualizar)
valores em listas de
tamanho definido.

14
90
minutos
27-01-2014

Tipos de dados

Estratégias gerais;
sequenciais – strings;

Resolução de problemas
Tipos de dados
37
utilizando strings;
sequenciais – Listas de

90
minutos
27-01-2014

Resolução de problemas
tamanho definido.
utilizando listas de tamanho
Tipos de dados
definido;
sequenciais – listas:
15


Resolução de problemas
listas de tamanho
utilizando listas de tamanho
indefinido;
indefinido e os métodos len, del
Métodos len, del e
e append.
append.

Fatiar/slicing listas;

Estratégias gerais;

Inserção utilizando

Resolução de um problema

16
90
minutos
29-01-2014

slicing;
utilizando slicing, os métodos da
Métodos mais utilizados
classe list e o método randint da
da classe list;
classe random.
Pesquisa dos métodos
da classe list;

Método randint da
classe random.
3.4.2 Recursos utilizados e elementos de avaliação
Recursos:

Quadro

Videoprojector

Computador

Windows

Python 2.7.6
Avaliação:

Grelha de Observação (encontrando-se esta em anexo)

Pontualidade

Assiduidade
38

Comportamento

Participação
3.4.3 Da aula 1 até à aula 12 e aula 14 – Aulas não assistidas
Aula 1 e aula 2
Este foi o primeiro dia de aulas da minha intervenção pedagógica e coincidiu com o início
do segundo período. Este dia era composto por dois blocos de 90 minutos.
Faltou apenas um aluno por estar doente.
Dei início a um novo módulo da disciplina de Programação e Sistemas de Informação
(PSI), com a linguagem de programação Python.
Os objetivos que se pretendiam com estas duas aulas eram:

Entender os conceitos da linguagem;

Saber trabalhar com os operadores lógicos e aritméticos da linguagem;

Saber definir uma variável e atribuir-lhe valores.
No primeiro bloco
Os alunos receberam-me de forma agradável e participaram quando questionados.
Comecei por questionar as respostas dadas ao questionário aplicado à turma no dia 12 de
dezembro de 2013, dia da última aula a que tinha assistido. Também os questionei sobre as
linguagens de programação que tinham estudado anteriormente, para poder comparar com
aquelas que conhecia e também perceber se tinham algum conhecimento sobre a linguagem de
programação Python. Apenas o aluno T. B. referiu que esteve a pesquisar algumas noções e a
experimentar alguns comandos desta linguagem. “A programação em contexto adequado
oferece condições particularmente favoráveis, condições que melhoram quanto mais jovem for o
programador” (Papert, 1995, p.186), sendo neste caso, alunos relativamente jovens.
De seguida passei à introdução da linguagem Python, passando pela apresentação de
conceitos teóricos, assim como a sua origem, as características, as vantagens da sua utilização,
exemplos de aplicação desta linguagem desde sites e jogos, etc., questionando os
conhecimentos dos alunos de forma interativa.
O aluno T. B. interrompeu para perguntar sobre a construção de jogos; referi que não
estava previsto para aquele módulo da disciplina.
39
Procederam à instalação do programa nos seus computadores.
Como os alunos já tinham estudado a linguagem C, e uma vez que tenho conhecimento
dessa linguagem, resolvi fazer uma comparação com essa linguagem. Apresentei um programa
construído em linguagem C que imprime uma frase comparando com o mesmo programa
construído em Python. Este programa em Python tem apenas uma linha de código e em C o
mesmo programa é composto por cinco linhas de código, podendo-se verificar, como demonstrei
aos alunos, que é mais prático trabalhar com a linguagem Python.
No segundo bloco
Mostrei os operadores aritméticos, os operadores lógicos, as expressões booleanas, qual a
forma de comentar o código Python, tudo isto seguido de exemplos. Apresentei as regras para se
criarem variáveis e expliquei como funcionavam as atribuições às variáveis e quais os tipos de
dados desta linguagem. Referi que todos os tipos de dados no Python são objetos, apresentando
o exemplo de que os números inteiros também são reconhecidos como objetos, isto para
demonstrar que esta é uma linguagem por objetos.
Resultados destas duas primeiras aulas
De uma forma geral, os alunos, portaram bastante bem, para aquilo que era habitual.
Participaram de modo satisfatório quando questionados.
Pela forma como participou, o aluno P. M. deixou-me expectativas de que viria a ser um
aluno interessado.
Reflexão da aula 1 e da aula 2
Foi minha intenção verificar os conhecimentos prévios dos alunos. No final destas aulas
fiquei com boa impressão dos alunos pela forma como se mostraram interessados pelos
assuntos tratados, uma vez que parti com poucas expetativas depois do que tinha observado em
aulas anteriores.
Aula 3
Neste dia de aulas a disciplina de PSI era composta por 1 bloco de 90 minutos.
Não faltou nenhum aluno.
40
Os objetivos que se pretendiam com esta aula eram:

Entender os conceitos da linguagem;

Saber trabalhar com o comando print;

Saber trabalhar com o comando input;

Saber criar ficheiros em Python com exemplos simples;

Saber abrir os ficheiros criados anteriormente.
No início desta aula o professor cooperante começou a discutir um assunto com o aluno
J. F. que não se referia diretamente aos assuntos tratados nas aulas, enquanto eu estava a
tentar começar a aula, até que o aluno T. B. ao ver-me a insistir em dar início à aula, intervém
dizendo “Deixe a professora começar a aula!”
Depois de o professor cooperante concluir a discussão com o aluno J. F., iniciei a aula
onde passei a apresentar a sintaxe do comando print e input e alguns exemplos de utilização
destes comandos. O comando print serve para imprimir mensagens no ecrã e o comando input
serve para receber valores do tipo inteiros ou decimais introduzidos pelo utilizador para serem
utilizados no programa.
Em vez de fazer correr o código diretamente na linha de comandos e com o objetivo de
tornar o código mais claro, facilitar a compilação e ter sempre acesso ao programa,
exemplifiquei como se criava um ficheiro com a extensão .py, como se guardava e como se abria
esse ficheiro.
De seguida resolveram alguns exercícios propostos onde iriam aplicar todos os conceitos
aprendidos até ao momento.
Um dos resultados de compilação do seguinte problema do serviço de restaurante:
Figura 6 - Enunciado do problema "Serviço de restaurante"
seria da seguinte forma:
41
Figura 7 - Compilação do programa sobre o problema "Serviço de restaurante"
Resultados desta aula
Nesta aula, de uma forma geral, os alunos tiveram um comportamento razoável e
mostraram interesse em resolver os exercícios.
Ao resolverem o exercício referido em cima, observando um a um, verifiquei que o aluno
R. B. estava a resolver de forma interessada, organizando o código de forma legível, separando
as contas. O aluno P. F. resolvia também de forma interessada, demonstrando ser um aluno
empenhado.
O aluno J. F. e o aluno T. B. experimentavam código no programa Python que iam buscar
à internet, código este que ainda não tinha sido lecionado. Assim, não estavam atentos aos
assuntos que estavam a ser lecionados e que eram importantes, por exemplo pormenores de
sintaxe, acabando estes alunos por questionar os erros que obtinham com esse código retirado
da internet. Quem mais interrompia com questões era o aluno T. B. Acabei por informar o T. B.
e o J. F. que tinha disponibilizado um manual de Python na pasta partilhada com a turma no
Google Drive, para que em vez de perguntarem assuntos que não eram referentes à aula,
consultassem o manual.
Os alunos P. M. e J. R. estiveram conversadores, usavam o computador, não para
trabalhar, mas para outros fins. Nesta aula não foi possível captar o interesse destes alunos.
Reflexão da aula 3
Nesta aula, onde começaram por desenvolver trabalho pela primeira vez, marcaram pela
positiva os alunos R. B. e P. F. pelo empenho, criando-me expetativas para aulas futuras.
Em relação aos alunos J. F. e T. B., preocupava-me a forma como trabalhavam, uma vez
que tinham bastantes capacidades, talvez estavam acima da média da turma. Em termos de
autonomia tinham uma atitude positiva, mas o facto de não estarem atentos quando eram
42
apresentados os conceitos básicos levava a que acabassem por ter dificuldades quando
desenvolviam os programas.
Para tentar que os alunos P. M. e J. R. criassem motivação para o Python, poderia ter de
os acompanhar mais e dar apoio para as dificuldades que pudessem ter.
Aula 4 e aula 5
Neste dia de aulas a disciplina de PSI era composta por dois blocos de 90 minutos.
O conteúdo destas duas aulas foi o ensino dos comandos if/elif/else, seguido da
resolução de exercícios utilizando a combinação destes comandos.
A primeira aula começou com um atraso de cerca de 20 minutos por motivos que me
foram alheios.
Os objetivos que se pretendiam com estas duas aulas eram:

Entender os conceitos da linguagem;

Saber trabalhar com os comandos if/elif/else.
Comecei por lecionar os comandos if/elif/else e de seguida dei alguns exercícios para
resolverem em que utilizavam estes comandos.
Estes são designados comandos de controlo de fluxo, onde conjuntos de instruções são
executados de forma condicional permitindo validar a entrada de dados. A sintaxe geral de um
bloco de código é da seguinte forma:
Figura 8 - Sintaxe geral da sequência de comandos if/elif/else
43
Pode haver casos onde só seja necessário utilizar a instrução if ou outros onde não seja
necessário utilizar a instrução elif ou a instrução else.
Neste problema resolvido durante a aula sobre cálculo da média das notas de um aluno
não foi necessário utilizar a instrução else, uma vez que os intervalos de valores eram
específicos.
Figura 9 - Enunciado do problema "Média das notas de um aluno"
As três possibilidades de resultado de um exemplo da compilação de um programa que
resolve este problema, poderia ser da seguinte forma:
Figura 10 - compilação do programa sobre o problema "Média das notas de um aluno"
Começaram a construir os programas pedidos no final do primeiro bloco, continuando
depois esse trabalho no segundo bloco. Uma vez que estes problemas eram mais simples e
exigiam menos raciocínio, apenas acompanhei os alunos um a um orientando na construção dos
programas.
Resultados destas duas aulas
44
O aluno J. N. dificilmente trabalhava, só depois de muita insistência acabava por fazer
alguma coisa, preferia usar o computador para outros fins. Os alunos J. R. e P. M. não
trabalhavam e afirmavam que não iam trabalhar. P. M. referiu que não gostava de Python.
Os alunos mais aplicados foram o P. F. e R. B. O aluno J. L. também trabalhou alternando
com conversa.
O J. F. e o T. B. continuavam a experimentar código no programa Python que não lhes era
pedido. Para que eles resolvessem os exercícios pedidos informei-os que o facto de os resolver
contava para a avaliação. Logo se puseram a resolver esses exercícios. Estes dois alunos
estavam a trabalhar razoavelmente, no entanto também estavam bastante faladores.
Durante a resolução de um exercício, ao passar pelo lugar do aluno R. B., este referiu-me
que o programa estava a dar um erro e não sabia porquê, então perguntei-lhe se não faltava
nada numa certa linha de código, onde ele percebeu que faltava “:” no final dessa linha, sendo
uma caraterística da sintaxe desta linguagem.
Pedi ao aluno P. F. que fosse ao computador do professor para construir o programa
sobre a média de notas dos alunos para que os seus colegas observassem a sua construção,
uma vez que tinha resolvido no computador dele de forma correta. No entanto, ele estava pouco
à vontade para se expor perante a turma. O seu colega T. B. incentivou-o dizendo-lhe para não
ser tímido, levando-o a realizar a tarefa sob minha orientação e esclarecimento.
Em termos de comportamento, à exceção de P. F., R. B. e J. L., os alunos portaram-se
bastante mal nestas duas aulas, fazendo muito barulho.
Já muito próximo do final do segundo bloco, os alunos estavam bastante desatentos e
barulhentos. Para que eles acalmassem informei-os de que ia enviar-lhes por email três
problemas para T.P.C., que seguiam o modelo dos anteriores. Pedi que me enviassem o
trabalho para o meu email. Para atingir esse objetivo pedi que cada um dos alunos me enviasse
email para criar pastas individuais no Google Drive partilhando com cada um deles, onde
colocariam os exercícios resolvidos. Essas pastas partilhadas foram criadas nesse dia depois da
aula.
Reflexão sobre a aula4 e a aula 5
No final destas aulas o que mais me preocupou foi a atitude inflexível que os alunos P. M
e J. R. tiveram em relação ao desinteresse pelas matérias que eram lecionadas. Questionei-me
se existe alguma forma de motivar estes alunos.
45
O aluno P.F. demonstrou interesse e teve bom comportamento. Se não fosse um aluno
tímido, se estivesse à vontade quando era necessário ser participativo, seria um aluno exemplar.
J. F e T. B. demonstraram bastante autonomia, o que é positivo, quando pesquisavam
informação, no entanto faziam-no quando deviam estar atentos a pormenores importantes da
linguagem, perdendo essa informação.
Aula 6 e aula 7
Neste dia de aulas a disciplina de PSI era composta por dois blocos de 90 minutos.
No primeiro bloco estiveram presentes cinco alunos e no segundo bloco estiveram na
mesma cinco alunos. Três dos alunos que tiveram falta, foi por terem sido mandados para a rua,
sendo referido a seguir o motivo nos resultados do primeiro bloco.
Os objetivos que se pretendiam com estas duas aulas eram:

Entender os conceitos da linguagem;

Saber trabalhar com os comandos if/elif/else;

Saber trabalhar com o comando while.
No início do primeiro bloco, chamei a atenção do aluno T. B. porque estava
constantemente a interromper para colocar questões sobre assuntos da linguagem Python que
viriam a ser lecionados mais à frente. Uma vez que isso atrapalhava o acompanhamento de
quem tinha mais dificuldades, ele aceitou e compreendeu a chamada de atenção.
Interpelei a turma pelo facto de não me terem enviado os exercícios resolvidos que lhes
forneci para resolverem em casa. O aluno P. F., que era um dos alunos mais aplicados na aula,
respondeu que não fazia T.P.C.’s.
No primeiro bloco
Os alunos estiveram a resolver um exercício que exigia raciocínio, referente à matéria da
aula anterior, utilizando os comandos if/elif/else. Consistia em calcular o valor que uma pessoa
deveria pagar por um bilhete de cinema, analisando a idade do cliente e ao mesmo tempo o dia
da semana, fazendo o desconto de uma dada percentagem conforme o caso, como se pode
verificar na tabela seguinte:
46
Tabela 4 - Problema “Promoções no cinema”
De
Segunda
(2,3,4 e 5)
Acima de 65 ou abaixo de
12 anos
Entre 12 e 65 anos
a
Quinta Sexta, Sábado e Domingo
(6,7 e 1)
60%
40%
35%
5%
Expliquei a mecânica do problema no quadro, para entenderem, e depois acompanhei
pelos lugares. Como tiveram algumas dificuldades, passei a resolver no computador do professor
projetando e questionando. T. B., J. F. e J. L. foram dizendo instruções de código conforme se ia
construindo o programa e segundo Arends (1995) “O discurso é uma via para os alunos
praticarem os seus processos de pensamento e assua competências de raciocínio.” (p. 416)
Quatro dos resultados da compilação de um programa que resolve este problema seriam
os seguintes:
47
Figura 11 - Compilação do programa sobre o problema "Promoções no cinema"
Resultados do primeiro bloco
No final do primeiro bloco gerou-se confusão com bastantes risadas, por mau
comportamento, assim sendo o professor cooperante resolveu mandar três alunos para a rua,
autores dessa confusão. A partir daí no resto desta primeira aula e na segunda aula ficaram
mais tranquilas. Quatro dos cinco alunos foram resolvendo o problema enquanto eu os
acompanhava ajudando a perceber algum erro de compilação, exceto J. N. que foi quem
trabalhou menos. Este aluno trabalhava depois de eu lhe exercer bastante pressão e insistir com
ele.
No segundo bloco
No segundo bloco comecei por introduzir matéria relativa ao ciclo While, apresentando a
sintaxe e exemplos de utilização. Por ser um ciclo define-se como sendo uma instrução de
48
repetição, que repete uma sequência de comandos enquanto uma expressão booleana (uma
expressão que testa uma condição) é avaliada como verdadeira.
Resultados do segundo bloco
Ao apresentar um exemplo de um programa utilizando o ciclo while, questionei a turma
sobre qual seria o resultado, logo o aluno T. B. responde prontamente de forma acertada. De
seguida passaram a resolver exercícios. Os dois primeiros por terem um baixo grau de
dificuldade, foram resolvidos com pouca ajuda. Pedi ao aluno T. B. para ir ao computador do
professor resolver o exercício que soma N (valor introduzido pelo utilizador) números (estes
também introduzidos pelo utilizador) e calcula a sua média. Pedi que explicasse ao mesmo
tempo, então ele explicou com uma atitude de imitação de um professor.
Um resultado da compilação de um programa que resolve este problema pode ser:
Figura 12 - Compilação do programa sobre o problema "Soma e média de um conjunto de números"
Os três últimos exercícios referentes à matéria do ciclo while enviei por email para o email
dos alunos (uma vez que existiam um email da turma) para que colocassem nas pastas
partilhadas que criei no dia anterior. No final da aula o professor cooperante disse que não valia
a pena enviar exercícios para T.P.C., uma vez que eles não faziam trabalhos de casa.
Reflexão da aula 6 e da aula 7
Não estando presentes na aula os alunos que fazem mais confusão, os restantes
trabalharam melhor e criou-se um ambiente mais tranquilo, ou seja houve mais rendimento.
Esses alunos acabavam por levar os outros a distrações.
Considero preocupante que estes alunos não tenham criado hábitos de levar trabalhos
para casa, resolvendo-os. Nesta fase seria difícil pensar em mudar os seus hábitos, talvez com
mais tempo de intervenção pedagógica isso tivesse sido possível.
49
Aula 8
Neste dia de aulas a disciplina de PSI era composta por 1 bloco de 90 minutos.
Apenas estiveram presentes os alunos P.F., T.B., J.N., J. L. e R.S.
Esta aula foi assistida pelo colega estagiário Ricardo Carvalho.
Os objetivos que se pretendiam com esta aula eram:

Entender os conceitos da linguagem;

Saber trabalhar com strings;

Saber utilizar os operadores + e *;

Saber utilizar o comando raw_input.
Nesta aula iniciei a matéria relativa às strings. Estas são sequências de carateres
imutáveis, ou seja, não é possível adicionar, remover ou modificar carateres.
Depois de apresentar a definição, alguns exemplos de utilização e o comando raw_input,
o aluno T. B. pediu que lhe explicasse a diferença da utilização deste comando e do comando
input. Expliquei no quadro exemplificando que o comando input retorna números inteiros e
números de vírgula flutuante e o comando raw_input retorna Strings. Para que este comando
possa retornar números, deve-se colocar antes deste comando, o comando int ou o comando
float, ou seja o comando raw_input serve para retornar os três tipos de dados e o comando input
só retorna números.
A seguir apresentei o exercício que deveriam resolver, onde se pretendia que
construíssem um programa para dar como resultado informações sobre a turma deles, tendo o
seguinte enunciado:
Figura 13 - Enunciado do problema "Exame da turma"
50
Estava pensado para ser resolvido em grupo, uma vez que era um problema mais
complexo, envolvendo vários parâmetros; no entanto estavam cinco alunos na sala, assim sendo
considerei que não seria adequado, passando a ser resolvido individualmente.
Resultados desta aula
O aluno P. F. foi o aluno que trabalhou mais e com algum apoio resolveu o exercício
apresentado na íntegra. Acabou por me surpreender, quando ao construir o programa, ao
inicializar as variáveis, o fez da forma mais otimizada (ou seja, mais comprimida). Verificou-se
que é um aluno atento, uma vez que este foi um assunto lecionado na primeira aula. O aluno T.
B. esteve também aplicado, mas menos que o aluno P. F., uma vez que alterna trabalho com
conversa. O professor cooperante esteve a construir o programa com ele, com alguma
controvérsia porque o aluno T. B. queria resolver de forma diferente e não aceitava a forma
como o professor cooperante estava a fazer. Eu intervim dizendo que um programa pode ser
feito de várias formas diferentes, cada um tem a sua maneira de resolver. Relativamente a esta
ideia Jonassen (2007) refere que o professor “Deve tornar-se mais recetivo na aceitação de
diferentes perspetivas e interpretações do mundo e, talvez, permitir aos alunos que desafiem as
suas perspetivas enquanto defendem as deles.” (p. 303).
O aluno J. N. foi o que trabalhou menos. Sempre demonstrou pouco interesse em
trabalhar, mesmo tendo-o eu acompanhado no lugar tentando que fizesse algo. Mesmo assim,
sempre acabava por fazer pouco.
Os alunos J. L. e R. S. trabalharam alternando com distrações.
Reflexão sobre a aula 8
Depois do acompanhamento aos alunos, conclui que os que demonstraram maior
interesse e trabalharam mais, foram os que aprenderam mais. Verifiquei que não é fácil colocar
a trabalhar alunos que não estão interessados em aprender, como é o caso de J. N., que só
trabalha depois de ser pressionado.
Uma vez que o problema apresentado era mais complexo do que aqueles que foram
apresentados até ao momento, considero então que deveria ter sido realizado em grupo e assim
podendo haver mais produtividade em termos de trabalho e aprendizagem.
Aula 9 e aula 10
51
Neste dia de aulas a disciplina de PSI era composta por dois blocos de 90 minutos.
No primeiro bloco estiveram presentes 7 alunos.
No segundo bloco estiveram seis alunos.
Os objetivos que se pretendiam com estas duas aulas eram:

Entender os conceitos da linguagem;

Saber fazer interpolação com strings.
Retomou-se o exercício/programa da aula anterior, sobre alunos de uma turma utilizando
Strings, mas de um modo mais elaborado e com varias etapas. Pretendia-se saber a
percentagem de rapazes, a percentagem de raparigas, a média das notas das raparigas, a
média das notas dos rapazes, quem foi a rapariga que tirou melhor nota e o rapaz que tirou
melhor nota. Como a maioria dos alunos não conseguiu completar, comecei a aula a resolver
este exercício no computador de forma interativa, projetando para os alunos poderem
acompanhar, questionando-os sobre o código a colocar.
Um dos resultados de compilação poderia ser o seguinte, para uma turma de três alunos.
Figura 14 - Compilação do programa sobre o problema "Exame da turma"
52
Resultados do primeiro bloco
Apenas o P. F. tinha completado esse exercício na aula anterior. O J. R. costumava ser um
aluno que sempre se recusava a trabalhar e que falava muito para o lado; no entanto, ao
questioná-lo no preenchimento do código, ele respondia de forma razoavelmente acertada. O T.
B. tinha construído o programa na aula anterior com o professor cooperante ao lado dele,
ajudando-o a fazer o exercício, mas sempre insistindo em fazer à sua maneira. Portanto o que
aconteceu nesta aula foi que o T. B. resolveu não tomar atenção e usar a internet para outros
fins, uma vez que já não lhe interessava este exercício. Tenho consciência que nesta aula
poderia ter agido de forma diferente com este aluno. Com efeito, por ser um aluno que de uma
forma geral tinha bastante rendimento, entendi que deveria preparar para esse aluno exercícios
extra para que ele resolvesse e não se distraísse com outros assuntos. No final da aula falei com
ele e disse-lhe que faria tudo o possível para que não voltasse a acontecer esta situação. Levarlhe-ia exercícios extra de modo a mantê-lo ocupado. Depois de concluído o programa, alguns
alunos foram ao computador do professor experimentar a execução do programa, entre eles o
aluno J. R., que introduziu a informação com correção e humor. Todos mostraram gostar da
experiência.
No segundo bloco mostrei como funcionava a interpolação nas strings. Por exemplo
quando se pretende apresentar a tabuada de um número como resultado, sem esta técnica de
formatação ficaria da forma que se pode observar no exemplo a seguir:
Figura 15 - Compilação do programa sobre o problema "Tabuada sem formatação"
Com esta técnica de formatação ficaria desta forma:
53
Figura 16 - Compilação do programa sobre o problema "Tabuada com formatação" com dois dígitos
É uma técnica que permite imprimir um resultado com um aspeto formatado, ou seja,
encosta à esquerda o número de dígitos máximo que pode atingir o resultado, de forma que os
carateres estejam todos alinhados (neste exemplo, observa-se o carater ‘=’). O máximo que pode
dar o resultado da tabuada é o valor 100, tendo três dígitos, como se pode observar a seguir:
Figura 17 - compilação do programa sobre o problema "Tabuada com formatação" com três dígitos
Resultados do segundo bloco
Os alunos resolveram dois exercícios, o primeiro foi mais simples, apenas os acompanhei
pelos lugares conseguindo todos resolver o exercício exceto T. B. O segundo programa devia
imprimir a tabuada de um número usando interpolação, exercício que estava previsto na matéria
do ciclo while acabando por não ser resolvido nessa aula. Este exercício resolvi-o no computador
de forma interativa questionando os alunos, o aluno J. L. foi o que mais participou nas
respostas. J. A. também respondeu, mas demonstrou mais dificuldades. P. F. percebeu bem a
mecânica e resolveu os problemas com pouca ajuda, no entanto não participou, tendo
dificuldades nesse sentido.
54
O J. L. é um aluno que sempre foi razoável, de um ponto de vista geral, portanto vinha a
melhorar o interesse pelas matérias e notou-se que estava a melhorar a aprendizagem da
linguagem Python.
Reflexão sobre a aula 9 e a aula 10
O facto de interagir com os alunos, questionando-os, resulta com alguns deles,
principalmente os que menos trabalham, fazendo com que estejam mais ativos e interessados
pelos assuntos da aula, como é o caso de um deles que desta forma se mantém mais atento. Já
outro aluno, tímido, que costuma estar atento quando são apresentados os conteúdos e sempre
interessado em resolver os exercícios, não se mostra interessado quando envolve interação.
Como os alunos são diferentes na sua forma de estar, a solução é ir ao encontro de cada
situação e tentar proporcionar uma aprendizagem adequada a cada caso.
Como referi em cima, o aluno T.B. nesta aula não esteve bem, logo resolvi que nas aulas
seguintes iria atuar de forma diferente.
Aula 11 e aula 12
Neste dia de aulas a disciplina de PSI era composta por dois blocos de 90 minutos.
No primeiro bloco estiveram todos os alunos presentes. No segundo bloco faltou R. S.
Os objetivos que se pretendiam com estas duas aulas eram:

Entender os conceitos da linguagem;

Saber indexar utilizando strings;

Saber qual a ordem dos carateres na tabela ASCII;

Saber utilizar os métodos existentes na biblioteca do Python na resolução de
exercícios;

Saber fatiar/slicing strings.
No primeiro bloco
Gerou-se bastante confusão, de modo que o professor cooperante decidiu mandar para
rua três alunos, P. M., J. F. e J. R..
O tema da aula foi a continuação do tipo de dados strings. Expliquei a indexação nas
strings exemplificando, como era utilizado o método len e dando exemplos de utilização.
55
Apresentei as características da tabela ASCII, verificaram os códigos de cada carater utilizando a
internet, onde cada carater tem um valor associado, por exemplo nos carateres do alfabeto de
“a” para “z” o valor vai aumentando.
De seguida resolveram o exercício utilizando o conceito de ordem da tabela ASCII. O que
se pretendia era que, dada uma frase fossem contadas as letras maiúsculas, as minúsculas e os
algarismos. Para ajudar a perceber o problema fiz um esboço do problema no quadro. Um dos
resultados da compilação de um programa que resolva este problema pode ser o que se observa
a seguir:
Figura 18 - Compilação do programa sobre o problema "Contador de carateres"
Também apresentei os métodos mais utilizados da classe String, que estão definidos
nessa biblioteca facilitando quando for necessário trabalhar com strings. Fiz demonstrações,
onde sugeri que me acompanhassem para perceberem melhor o funcionamento e mostrei como
pesquisar outros métodos dessa classe.
No segundo bloco
Apresentei slicing sobre strings com algumas demonstrações, questionando quais seriam
os resultados. O slicing utiliza a indexação das strings, sabendo que o índice do primeiro carater
começa em zero e termina em comprimento da string menos um, isto do início para o fim. Se
percorrer a string do fim para o início, o último carater tem valor -1, até ao primeiro que tem o
valor do comprimento da string, mas negativo. Pode-se observar um exemplo na imagem
seguinte:
Figura 19 - Exemplo de indexação em strings
56
O slicing consiste em fatiar a string, em que podem ser definidos como parcelas, da forma
[inicio : fim + 1 : intervalo]. Se não for definido o início, será considerado como zero. Se não for
definido o fim + 1, será considerado o tamanho do objeto. O intervalo (entre os caracteres), se
não for definido, será 1. Os exemplos seguintes, utilizando a string “Python”, mostram algumas
situações diferentes de como se pode aplicar.
Figura 20 - Exemplos de utilização de slicing sobre strings
De seguida, os alunos estiveram a resolver exercícios utilizando slicing e métodos da
classe String. Acompanhei aluno a aluno, para ver se estavam a conseguir resolver.
Um dos problemas que foi resolvido, em que o programa pedia o nome do utilizador,
dando como resultado o nome em maiúsculas e em formato de escada, como se pode verificar
pelo resultado da compilação desse programa:
57
Figura 21 - Compilação do programa sobre o problema "Nome em escada"
Resultados destas duas aulas
O aluno P. F. demonstrou mais empenho em resolver o exercício referente à tabela ASCII.
Em relação aos problemas que utilizavam slicing, este aluno teve mais dificuldade, assim sendo
tive que dar algum apoio.
J. R. não acompanhou e estava falador como era costume. T. B. resolveu fotografar o slide
dos exemplos do slicing, no entanto referi que iria ceder as apresentações.
J. F. e J. L. estavam a tentar resolver com alguma dificuldade, acabei por lhes dar
algumas indicações para os ajudar na resolução.
O aluno P. M. voltou para a aula e o professor cooperante sentou-se ao lado dele tentando
ajudá-lo a construir um destes programas utilizando slicing, no entanto, a resolução sugerida
pelo professor cooperante não estava a ser compreendida pelo aluno. Por isso, apresentei a
minha solução mais simplificada no computador do professor. Todos os alunos verificaram o
resultado e ao mesmo tempo corrigiram os seus programas.
R. B. nas primeiras aulas ia trabalhando alternando com alguma distração, nesta aula
trabalhou menos e quando fez correr o programa anterior, utilizou uma frase com conteúdo
desadequado, para fazer piada.
Os alunos J. R. e J. N. não trabalharam absolutamente nada. Mais ainda, J. R. foi um dos
alunos que sempre se recusou a trabalhar e quase sempre esteve distraído e a falar com o
colega do lado.
Reflexão sobre a aula 11 e a aula 12
Embora estes alunos tivessem conhecimentos de programação, o tema slicing era algo
novo para eles, uma vez que nunca tinham utilizado noutras linguagens e por esse motivo
58
existiram algumas dificuldades por parte dos alunos que estavam a tentar construir o programa.
Dos que nem tentaram, não é possível falar em dificuldades.
O aluno R. B. até ao momento era um aluno que trabalhava, embora falasse às vezes para
os colegas do lado, tinha um comportamento razoável de acordo com o que era habitual nesta
turma, neste dia surpreendeu pela negativa.
O aluno J. R. no dia de aulas anterior foi participativo quando questionado, por isso neste
dia acreditava que estivesse mais motivado para desenvolver os programas. No entanto,
continuava a manter a atitude inflexível em relação ao trabalho.
Aula 14
Neste dia de aulas a disciplina de PSI era composta por dois blocos de 90 minutos.
O que diz respeito ao primeiro bloco é descrito a seguir.
Faltou apenas o aluno P.F.
Os objetivos que se pretendiam com esta aula eram:

Entender os conceitos da linguagem;

Saber trabalhar com listas de tamanho indefinido, utilizando os métodos len, del e
append.
Neste bloco
Os alunos estiveram a construir programas sobre Strings e sobre listas de tamanho
definido, que não foram resolvidos anteriormente e que envolviam noções importantes que
considerei necessário experimentar e perceber.
Fiz esboços no quadro para entenderem e resolvi-os no computador do professor
projetando-os de forma interativa e ao mesmo tempo questionando qual o código a colocar.
Num dos problemas utilizando strings, era pretendido que se construísse um programa
que recebia uma sequência de carateres do utilizador, inclusive frases, e se testasse se essa
sequência era um palíndromo, ou seja, a sequência era igual da esquerda para a direita e da
direita para a esquerda, ignorando os carateres de pontuação e espaços.
Estes podem ser resultados da compilação de um programa que resolve esse problema:
59
Figura 22 - Compilação do programa sobre o problema "Teste de palíndromo"
Noutro problema que foi resolvido, utilizando listas de tamanho definido, pretendia-se
converter um número inteiro entre 1 e 3999 em numeração romana. Sendo listas de tamanho
definido, uma lista continha um conjunto de valores possíveis em numeração romana (atómicos
e os que tem carater de menor valor à esquerda) e a outra continha os números inteiros
associados.
Um dos resultados da compilação de um programa que resolve este problema:
Figura 23 - Compilação do programa sobre o problema "Inteiro para romano"
Resultados deste bloco
Voltei a questionar o aluno J. R., que habitualmente não desenvolve os programas no
computador dele. Desta vez, ao fazer-lhe as perguntas, ele respondeu e demonstrou capacidade
de aprendizagem.
T. B. e J. F deram algumas ideias para a construção dos programas; já era habitual serem
participativos, e quase sempre de forma acertada. R. B. também acrescentou um pormenor no
código do programa que utilizava strings.
Reflexão sobre a aula 14
Cheguei à conclusão que o aluno J. R. apenas se envolve nos assuntos da aula quando
questionado, quanto a trabalho desenvolvido continuava a recusar-se. O aluno R. B. também
60
passou a ser mais interessado pelos assuntos da aula desta forma interativa, passando a ser
mais preguiçoso no momento de desenvolver trabalho.
3.4.4 Aula 13, aula 15 e aula 16 - Aulas assistidas
Aula 13
Neste dia de aulas a disciplina de PSI era composta por 1 bloco de 90 minutos.
Não faltou nenhum aluno.
Esta aula foi a primeira aula assistida pelos supervisores, a professora Altina Ramos e o
professor Bento Silva. Esteve presente o colega Ricardo Carvalho, também estagiário do
professor cooperante numa outra turma.
Estava bastante nervosa por ser a primeira aula assistida por dois supervisores e também
porque era o primeiro contacto com a professora Altina.
Os objetivos que se pretendiam com esta aula eram:

Entender os conceitos da linguagem;

Saber trabalhar com listas;

Saber utilizar os operadores + e *;

Saber fazer alteração e inserção de valores numa lista de tamanho definido.
Nesta aula dei início à matéria sobre listas, que se definem como sendo sequências de
objetos que podem ser de qualquer tipo, inclusive outras listas e também podem conter
diferentes tipos de dados (int, float, string, lista) em simultâneo, sendo esta uma caraterística do
Python. São mutáveis, ou seja, é possível fazer alterações, ao contrário das strings.
Apresentei também as suas caraterísticas, a sintaxe, exemplificando e ao mesmo tempo
interagindo com os alunos, questionando-os acerca do resultado dos programas exemplificados.
O aluno T.B. ia respondendo. Apresentei exercícios para resolverem e comecei por resolver o
primeiro no computador do professor com projeção, para ajudar a entender, questionando os
alunos acerca do código que deveria colocar. Na construção do programa, o professor
cooperante deu uma sugestão para otimizar o código, de forma que o programa fizesse a
impressão dos resultados omitindo elementos desnecessários.
61
O que se pretendia com este programa era que ao receber 10 carateres, introduzidos pelo
utilizador, deviam ser colocadas as consoantes numa lista, assim dar como resultado a sua
quantidade e imprimi-las.
Questionei o J. A. sobre um assunto de sintaxe e ele respondeu acertadamente. O aluno
T. B. participou na construção do programa e questionou o porquê de certo código, então eu
expliquei.
O resultado da compilação de um programa que resolve este problema pode ser da
seguinte forma:
Figura 24 - Compilação do programa sobre o problema "Conta e imprime consoantes"
A seguir pedi que resolvessem outro problema, idêntico ao anterior, que recebe do
utilizador 10 números inteiros e os coloca numa lista, imprimindo a soma dos quadrados desses
números. Fui acompanhando pelos lugares e observando como estavam a resolver, ao mesmo
tempo questionava os seus códigos para que tivessem a noção se iam no caminho certo.
Observa-se a seguir um resultado possível de um programa que resolve este problema:
62
Figura 25 - Compilação do programa sobre o problema "Soma quadrados"
Resultados desta aula
O aluno P. F. que tinha sido até ao momento um aluno que estava acima da média da
turma, sempre sossegado e que mostrava sempre mais empenho em trabalhar, nesta aula não
estava a trabalhar. Falei com ele orientando-o para a forma de resolver o problema, no entanto
ele recusou-se a trabalhar.
Decidi pedir ao aluno J. F., sendo este um aluno pouco inibido e que tem boas
capacidades de compreensão, para que fosse ao computador do professor resolver este
programa, projetando para os outros alunos acompanharem. Ele não aceitou, demonstrando
alguma inibição nesta aula. Depois, pedi ao aluno J. N. que fosse ele, informei-o que ajudava na
construção do programa, então ele aceitou. O professor cooperante, os alunos T. B. e J. F.
davam sugestões de código.
Os alunos que não trabalharam absolutamente nada foram o P. M., J. R. e R. S. O aluno
R. S. normalmente ia trabalhando alguma coisa durante as outras aulas, nesta deixou-se levar
pelas distrações dos alunos P. M. e J. R.
Os alunos que estiveram mais empenhados foram T. B. e J. F., pela forma como
acompanharam e resolveram os problemas, não alternando com conversa como era habitual.
Reflexão sobre a aula 13
Questiono o porquê de o aluno P. F. não trabalhar nesta aula, seria por ter receio de ser
convidado a participar ou a ir ao computador do professor resolver o exercício, isto por estarem
pessoas a assistir?
63
O aluno J. N. esteve muito bem ao ir ao computador do professor construir o programa,
demonstrou segurança e dedicação. Apenas lamento que ele não desenvolva trabalho no
computador dele.
Aula 15
Esta foi a segunda aula/segundo bloco do dia 27 de janeiro de 2014, sendo a segunda
aula assistida pelos supervisores Altina Ramos e Bento Silva.
Estiveram presentes cinco alunos, J. F., J. A., J. N., J. L. e R. S.
Os objetivos que se pretendiam com esta aula eram:

Entender os conceitos da linguagem;

Saber trabalhar com listas de tamanho indefinido, utilizando os métodos len, del e
append.
Neste bloco
O tema da aula do segundo bloco foi listas de tamanho indefinido. Neste caso a lista vai
sendo construída ao longo da execução, partindo da lista vazia, utilizando para isso métodos
existentes na classe list.. Mostrei como funcionavam, apresentei os métodos mais utilizados para
construir essas listas e dei exemplos de utilização, onde questionava os resultados do código no
interpretador do Python, e também apresentei outros exemplos de código onde questionei os
resultados.
De seguida passou-se à resolução de problemas. O primeiro foi mais simples, pretendia-se
que fosse construída uma lista de nomes e ao imprimir devia ser colocado ao lado do nome o
número de letras de cada nome. Eles resolveram nos seus computadores, enquanto eu
acompanhava e dava apoio.
O problema seguinte foi sobre a investigação de um crime, tema que considerei
interessante para os motivar.
O enunciado do problema era o seguinte:
64
Figura 26 - Enunciado do problema "Investigação do crime"
Dois dos resultados da compilação do programa podem ser da seguinte forma:
Figura 27 - Compilação do programa sobre o problema "Investigação do crime"
Num dado momento reparei que o aluno J. F. estava a visualizar esta apresentação que
eu ainda não tinha disponibilizado aos alunos, fiquei surpreendida, então o professor cooperante
referiu que tinha colocado na pasta partilhada com os alunos.
65
A seguir pedi a este aluno para ir ao computador do professor construir o programa do
crime, ele aceitou e explicou o código, ao mesmo tempo que era projetado para o resto dos
alunos.
Resultados deste bloco
Quando questionado, o aluno J. F. respondia de forma acertada.
No primeiro programa desenvolvido, o aluno R. S., que sempre teve dificuldades, e
também o aluno J. A. conseguiram resolver com alguma orientação.
Em relação ao segundo programa, os alunos J. A. e J. L. resolveram com empenho. O
aluno R. S. tentava fazer, no entanto ia copiando algum código pelo colega J. L. No momento
que chegava junto ao aluno J. N., ele fazia alguma coisa, quando me afastava já não fazia mais
nada. Disse-lhe que tinha bastantes capacidades, considerando lamentável não as colocar em
prática. O aluno J. F. também conseguiu resolver, fazendo alguns erros, no entanto conseguiu
completar depois de ser esclarecido.
No final desta aula foram feitos alguns comentários pelos supervisores, onde referiram
que as minhas aulas tinham sido muito expositivas. Declarei que alternava com interação,
questionando os alunos e fazendo experimentar algum código. O professor Bento criticou por
haver falta de história para cativar no exercício sobre o crime. Considerei que por ser um
exercício onde havia a investigação de um crime, por si só já ajuda a motivar.
Reflexão sobre a aula 15
Nesta fase verifiquei que o aluno J. A. estava a melhorar em termos de empenho de forma
progressiva ao longo das aulas, com isto notou-se que ele estava a aprender.
O aluno J. N. tem dificuldades em aprender por ser bastante preguiçoso, tenta resolver os
problemas à custa de muita pressão, e não consegui que desenvolvesse mais as suas
capacidades.
Aula 16
Neste dia de aulas a disciplina de PSI era composta por dois blocos de 90 minutos, no
entanto só houve a aula do primeiro bloco.
Faltaram três alunos, J. F., J. R. e P. M.
66
Esta foi a terceira e última aula assistida pelos supervisores Altina Ramos e Bento Silva.
Também esteve presente o colega estagiário Ricardo Carvalho.
Os objetivos que se pretendiam com esta aula eram:

Entender os conceitos da linguagem;

Saber trabalhar com slicing em listas;

Saber utilizar os métodos da classe list;

Saber pesquisar métodos na classe list;

Saber utilizar o método randint da classe random.
Os alunos que vieram à aula chegaram bastante atrasados, no entanto o professor
cooperante comentou que era normal por ser hora de almoço e também iam ter visita de estudo
a seguir a esta aula.
Depois da crítica à utilização de exposição por parte dos supervisores, nesta aula resolvi
fazer alterações no método de ensino que estava a utilizar, abdicando da apresentação
PowerPoint. Mantive o conteúdo que estava programado, contudo utilizando o interpretador do
Python para fazer demonstrações de exemplos.
Comecei por exemplificar o slicing sobre listas. Foi criada uma lista com nomes de
animais do Jardim Zoológico, onde pedi aos alunos para dizerem nomes para inserir na lista.
Chegaram a sugerir nomes invulgares, como “Suricata”, sugestão do aluno R. B. Fui
questionando os resultados dos testes de slicing na linha de comandos.
De seguida passei a mostrar alguns métodos dos mais utilizados da classe list, também
mostrei alguns exemplos de utilização e a pesquisa de outros métodos que possam interessar
para programas que estejam a desenvolver. Assim, os alunos ficaram a saber como podem
procurar aquilo que pretendem da classe list.
Também demonstrei como se trabalha com aleatoriedade, uma vez que seria útil para o
programa que iam desenvolver a seguir.
Depois de observar os alunos nas aulas a que assisti, verifiquei que estavam bastantes
vezes a jogar jogos de futebol no computador. Para motivar resolvi planear e construir um
programa que tinha como tema jogos de futebol, com o objetivo de criar jornadas de futebol.
Este programa envolve várias etapas na sua construção, que estão enumeradas pela seguinte
ordem:
67
1º O utilizador insere um número par de equipas;
2º O utilizador insere as equipas;
3º Aleatoriamente com essas equipas cria-se pares de equipas para jogar;
4º O utilizador insere o número de remates para cada equipa e para cada remate é
gerado um valor aleatório entre zero e um (zero significa que não foi golo e um significa que foi
golo);
5º São apresentados os golos de cada equipa;
6º No final, o programa apresenta a equipa que venceu, ou então se tiveram o mesmo
número de golos diz que as equipas empataram.
O código deste programa encontra-se em anexo.
68
Um dos resultados da compilação de um programa que resolve este problema:
Figura 28 - Compilação do programa sobre o problema "Jornada de futebol"
Passei a explicar no quadro a ideia para o início o programa. Os alunos foram colocados
em grupo, formou-se um grupo de três alunos e dois grupos de dois alunos. Acompanhei pelos
lugares um a um e observava a forma como estavam a desenvolver.
Resultados desta aula
69
Ao questionar os testes de slicing na linha de comandos, verificou-se que os alunos foram
bastante participativos entre eles o aluno R. B. que em aulas anteriores não estava interessado
em dar atenção aos assuntos da aula.
Verifiquei que estavam com bastantes dificuldades. O aluno J. N. estava no grupo de três,
mas não estava empenhado em ajudar os colegas. Os alunos T. B. e R. S. estavam a avançar na
resolução, graças ao aluno T. B. que tinha menos dificuldades. O aluno J. L. estava empenhado
mas com bastantes dificuldades e o aluno R. B. estava ao seu lado, mas não se esforçava para
ajudar na construção do programa.
Resolvi pedir ao aluno R. S. para ir ao computador do professor construir o programa e
mostrar para os seus colegas. Ele recusou-se a ir, mas o professor cooperante exigiu que ele
fosse. Então foi e começou a construir o programa com algumas orientações, entretanto deu o
toque de saída e não foi possível completar. Ficou o professor cooperante de o completar na
aula seguinte.
No final da aula foram-me apresentadas críticas pelos supervisores. A professora Altina
referiu que tinha escrito de forma errada a palavra “Orangotango”. O professor Bento voltou a
referir que faltou uma história para cativar, antes de iniciar a construção do programa e também
que fiz uma má gestão do tempo. Acrescentaram que fiz bem em alterar a forma de dar a aula,
mas que mesmo assim ainda tinha sido expositiva.
Para justificar a falta de uma história, referi que tenho pouca cultura de futebol, para estar
à-vontade em contar histórias referentes a esse tema.
Entendo que esta aula foi pouco expositiva, foi mais interativa e demonstrativa e também
considero que a exposição ajuda a entender melhor alguns conceitos.
Reflexão sobre a aula 16
Dos alunos presentes na aula, aqueles que mostraram interesse nas matérias e estavam a
aprender, foram os alunos P. F., J. A., J. L. e T. B, pela forma como se empenharam em
trabalhar.
O aluno R. B. esteve bem no momento em que foram convidados a participar, uma vez
que foi mais participativo.
70
Considero que o problema que apresentei era de um grau de dificuldade bastante
elevado, daí os alunos apresentarem dificuldades em construir este programa. Com efeito, penso
que deveria ser construído ao longo de mais de uma aula.
Considero ainda que não foi fácil gerir o tempo da aula, uma vez que os alunos entraram
bastante atrasados.
As planificações destas três aulas assistidas encontram-se em anexo.
3.4.5 Reflexão final
O aluno R. B. era um aluno que nas primeiras aulas interessava-se em trabalhar, depois
de faltar algumas vezes, nas aulas seguintes tornou-se mais desinteressado e não adiantava
aproximar para tentar ajudar, que ele não estando interessado, ateimava em não trabalhar,
chegando a responder de forma arrogante ao professor cooperante.
O aluno R. S. nunca foi muito autónomo no seu trabalho precisando constantemente de
apoio pois tinha bastantes dificuldades.
Os alunos P. M. e J. R. nunca estiveram interessados em trabalhar, apesar das várias
tentativas, sempre se recusaram, preferiam a diversão e a conversa. Em relação a estes casos
Ausubel (1980) refere que “Alunos que têm pouca necessidade de saber e compreender
naturalmente exercem relativamente pequeno esforço para aprender.” (p. 335)
O aluno J. F. e o aluno T. B eram conversadores, no entanto iam trabalhando,
conseguindo perceber facilmente como resolver os problemas.
O aluno J. N. nunca esteve interessado em aprender, apenas trabalhava alguma coisa
depois de eu exercer bastante pressão.
O aluno P. F. foi sempre um aluno empenhado em trabalhar, exceto na primeira aula
assistida, situação para a qual não encontrei explicação. Mantinha-se discreto na sua secretária
e geralmente não se deixava levar por distrações. Destoava da média da turma em termos de
comportamento e dedicação ao trabalho, uma vez que esta turma era visada pelo seu mau
comportamento.
Em relação ao aluno J. L., este manteve-se um aluno linear em termos de comportamento
e aproveitamento, ia desenvolvendo trabalho alternando com algumas distrações e conversa,
contudo não era um aluno que perturbasse o ritmo da aula.
71
Finalmente, no que se refere ao aluno J. A., este era um aluno que se distraia bastante,
tanto com jogos de computador como com conversa, desde as aulas observadas. Embora
envolvendo-se em algumas distrações ocasionalmente foi evoluindo ao longo das aulas,
passando a desenvolver cada vez mais trabalho e tornando-se mais interessado pelas matérias.
3.5 Análise da intervenção
Uma vez que terminei a minha intervenção aproximadamente a meio do módulo não tive
oportunidade de aplicar avaliação aos alunos, isto porque esta apenas é realizada no final de
cada módulo. Com efeito, apliquei um questionário online no final da minha intervenção para
verificar as aprendizagens concretizadas até aquele momento. Este questionário encontra-se em
anexo. As questões foram as que se apresentam a seguir:

Qual o teu nome e apelido?

Tiveste alguma dificuldade na linguagem Python?

Se respondeste “sim” à questão anterior enumera a (s) tua (s) dificuldade (s):
o Operadores (aritméticos/lógicos)
o Variáveis
o Ciclo while
o Strings
o Listas

Explica de que género é (são) a (s) tua (s) dificuldade (s).
Foram seis os alunos que responderam a este questionário, uma vez que eram os alunos
presentes.
A primeira questão teve como objetivo saber quem era o aluno que tinha a dificuldade
para esta ser transmitida ao professor cooperante para que o problema fosse resolvido.
Em relação à segunda questão “Tiveste alguma dificuldade na linguagem Python?”, cinco
alunos referiram que não tinham dificuldades e um aluno referiu que tinha dificuldades.
Quanto à questão “Se respondeste “sim” à questão anterior enumera a (s) tua (s)
dificuldade (s) ”, o aluno selecionou “Listas” como a sua dificuldade.
Finalmente à questão “Explica de que género é (são) a (s) tua (s) dificuldade (s).” não
houve respostas.
72
Depois de ter realizado a minha intervenção pedagógica apliquei outro questionário online,
interrompendo uma aula que estavam a ter. Neste questionário os alunos tiveram a
oportunidade de avaliar as aulas que lecionei. Pode-se encontrar este questionário em anexo.
As questões aplicadas foram:
1. Realizei a tarefas que me foram indicadas?
2. Gostei da forma como as aulas foram lecionadas?
3. Gostei das atividades que me foram propostas?
4. A professora tirou as minhas dúvidas?
5. A professora criou um ambiente de interatividade?
6. Fiquei motivado para programar em Python?
7. Aumentei a minha autonomia no desenvolvimento de programas em Python?
Para cada questão tinha como opção de resposta a possibilidade de seleção de um dos
valores de 1 a 5 conforme a classificação que achavam adequada para essa questão.
Considerando 1-medíocre, 2-insuficiente, 3-satisfaz, 4-bom e 5-muito bom.
Responderam sete alunos a este questionário, uma vez que eram os alunos presentes no
momento.
Em relação à questão “Realizei as tarefas que me foram indicadas?”, dois alunos deram
como resposta o valor 5, quatro alunos deram resposta o valor 4 e um aluno deu resposta o
valor 3.
Resposta dos alunos à questão 1
0%
0%
Valor
14%
29%
1
2
3
57%
4
5
Gráfico 1 - Resposta à questão "Realizei as tarefas que me foram indicadas?"
73
Quanto à questão “Gostei da forma como as aulas foram lecionadas?”, cinco alunos
deram resposta cinco, um aluno deu a resposta 4 e um aluno deu resposta 3.
Resposta dos alunos à questão 2
0%
0%
Valor
14%
14%
1
2
3
72%
4
5
Gráfico 2 - Resposta à questão "Gostei da forma como as aulas foram lecionadas?"
A questão “Gostei das atividades que me foram propostas?” teve uma resposta com valor
5, quatro respostas com valor 4 e duas com valor 3.
Respostas dos alunos à questão 3
0% 0%
14%
29%
Valor
1
2
3
4
57%
5
Gráfico 3 - Resposta à questão "Gostei das atividades que me foram propostas?"
Quanto à questão “A professora tirou as minhas dúvidas?”, seis alunos deram como
resposta o valor 5 e um aluno deu como resposta o valor 4.
74
Resposta dos alunos à questão 4
0%
0% 0%
Valor
14%
1
2
3
4
86%
5
Gráfico 4 - Resposta à questão "A professora tirou as minhas dúvidas?"
Em relação à questão “A professora criou um ambiente de interatividade?”, quatro alunos
deram como resposta o valor 5 e três alunos deram como resposta o valor 4.
Respostas dos alunos à questão 5
0%
0%
0%
Valor
43%
1
2
57%
3
4
5
Gráfico 5 - Resposta à questão "A professora criou um ambiente de interatividade?"
A questão “Fiquei motivado para programar em Python?” teve três respostas com valor 5,
duas respostas com valor 4, uma com valor 3 e uma com valor 2.
75
Respostas dos alunos à questão 6
0%
14%
Valor
43%
1
14%
2
3
4
29%
5
Gráfico 6 - Resposta á questão "Fiquei motivado para programar em Python?"
Finalmente a última questão “Aumentei a minha autonomia no desenvolvimento de
programas em Python?” teve quatro respostas com valor 5, duas com valor 4 e uma com valor
2.
Respostas dos alunos à questão 7
0%
14%
0%
Valor
1
29%
57%
2
3
4
5
Gráfico 7 - Resposta à questão "Aumentei a minha autonomia no desenvolvimento de programas em Python?"
Avaliação no final do módulo
76
Foi-me fornecido o resultado da avaliação dos alunos no final do módulo, onde pude
constatar que todos os alunos da turma/turno foram aprovados, obtendo notas que variaram
entre 10 valores e 13 valores, resultando uma média de 11,1 valores.
CAPÍTULO IV – CONSIDERAÇÕES FINAIS
4.1 Conclusões
Chegando ao final deste processo, resta fazer uma análise dos resultados obtidos da
aplicação do projeto de intervenção e verificar se os objetivos previstos foram realmente
concretizados.
No que diz respeito à escolha da interatividade, fazendo um apanhado geral, entendo que dado o
género de turma em questão, por ser uma turma com problemas de comportamento e falta de
empenho na realização de tarefas, a utilização da interação foi dos melhores meios de captar a
atenção da turma para os assuntos que estavam a ser lecionados. De realçar o caso de um
aluno que se recusava a trabalhar, no entanto interagindo com ele consegui-o cativar para os
assuntos da aula. “Em sala de aula essa aprendizagem é interativa porque ocorre mediante
participação, bidirecionalidade e multiplicidade de conexões.” (Marco Silva, 2006, p. 74) Outra
forma de trabalho interativo foi serem convidados a desenvolver programas no computador do
professor com projeção para os colegas, acompanhar e ao mesmo tempo dar ideias acerca
construção do programa. Desta forma demonstravam empenho na realização da tarefa, ou seja,
notou-se que havia mais motivação e colaboração.
Quanto ao desenvolvimento de tarefas nos seus computadores, um dos alunos foi sempre
muito empenhado, no entanto não era muito recetivo à interação. Dois deles tinham bastantes
capacidades cognitivas, desenvolviam os programas, no entanto alternavam com conversa.
Houve o caso de dois alunos que evoluíram positivamente, tornando-se cada vez mais aplicados.
Dois deles trabalhavam pouco, acabando por realizar as tarefas com bastante apoio. Um deles
era um aluno que realizava as tarefas, no entanto depois de faltar três aulas, voltou com pouco
empenho em trabalhar, mas respondia quando questionado. Houve dois alunos que se
recusaram a trabalhar, mesmo insistindo e tentado dar apoio para a resolução do problema.
Quanto à realização de T.P.C. considero lamentável que os alunos se recusassem a fazer
estas tarefas, impossibilitando-me a realização deste plano.
77
Analisando as respostas ao questionário da avaliação das aulas, verifico que os alunos
consideraram que as aulas responderam aos objetivos propostos.
Considerando os resultados das respostas dadas às questões “Gostei da forma como as
aulas foram lecionadas?”, “Gostei das atividades que me foram propostas?”, “A professora tirou
as minhas dúvidas?”, “A professora criou um ambiente de interatividade?”, “Fiquei motivado
para programar em Python?” e “Aumentei a minha autonomia no desenvolvimento de
programas em Python?”, concluo que foram bastante satisfatórios, pelas percentagens de alunos
que deram valor 4 e 5 a estas respostas.
Quanto à realização de trabalhos em grupo, houve dois problemas com maior grau de
complexidade, em duas aulas distintas, que estavam planeados para serem desenvolvidos em
grupo, no entanto verificando o escasso número de alunos dentro da sala, optei por não colocar
em prática esse plano. Depois de realizada a intervenção conclui que não foi uma boa opção,
podendo mesmo assim criar grupos, nem que fosse apenas um grupo. Reconheço que foi uma
aprendizagem para mim e se vier a ter outra oportunidade não voltarei a repetir esta situação.
Com efeito, os trabalhos em grupo não foram suficientes para tornar os alunos mais
colaborativos.
Fazendo uma análise global, considero que o resultado foi positivo.
4.2 Limitações
Para que a minha intervenção pedagógica se realizasse foi necessário bastante esforço
para ultrapassar algumas dificuldades.
De entre as dificuldades, uma delas foi o facto de ser uma turma de alunos mal
comportados e com pouca vontade de trabalhar, conforme pude constatar pelas observações
realizadas e por informações recolhidas em atas do ano anterior. Foi uma turma onde tive
bastantes dificuldades em trabalhar os conteúdos, ainda assim consegui que realizassem algum
trabalho alternando com momentos de distração, perturbação de aula com bastante barulho,
trabalhando uns mais do que outros. Dois dos alunos recusaram-se sempre a trabalhar, não
tendo eu conseguindo alterar essa atitude deles.
Outra das limitações com que me deparei foi o facto de a matéria que estava combinada
com o professor cooperante para lecionar, decorreria durante o mês de janeiro, uma vez que
fazia parte de um módulo do 12º ano para assim os alunos irem para estágio no início do mês
de março. Isso dificultou ou impossibilitou a presença em algumas aulas do meu curso e
78
dificultou a preparação para os trabalhos finais das Unidades Curriculares do primeiro semestre
do segundo ano do curso.
Finalmente a última dificuldade teve a ver com o conteúdo que lecionei, sendo uma
matéria que não tive oportunidade de aprender antes. Mesmo tendo experiência em linguagens
de programação, obtida na formação anterior que tive, esta era uma linguagem nova para mim,
daí ter que dispor de tempo, que neste caso era escasso, para estudar a sintaxe e requisitos
desta linguagem de programação.
4.3 Reflexão sobre o projeto e aprendizagens
Tendo chegado ao fim a minha intervenção pedagógica, resta fazer uma análise do projeto
realizado e daquilo que aprendi ao longo deste processo.
Cada nova escola com que nos deparamos envolve sempre novas situações quer seja
com experiências positivas quer com experiências negativas. Essas experiências são sempre
uma aprendizagem. Se estas resultarem em algo positivo, em outras experiências futuras irei
procurar repetir, caso contrário, estarei mais atenta e tentarei evitar que se voltem a repetir
essas situações.
Apesar de ter pouco tempo para a preparação das aulas que tinha de lecionar, consegui
elaborar materiais didáticos para as minhas aulas, o que aumentou o meu sentimento de
autonomia e capacidade de resolução de problemas.
Tive a oportunidade de aprender uma nova linguagem de programação. Embora tenha no
meu currículo experiência com outras linguagens de programação, cada linguagem é diferente.
Podem existir alguns elementos em comum, no entanto as suas diferenças exigem novas
aprendizagens, portanto esta foi uma experiência que considerei enriquecedora para o meu
currículo.
Na minha pouca experiência de ensino, já estive em contacto com turmas complicadas
em termos de comportamento; neste projeto voltei a estar em contacto com uma turma com
essas características e por isso desenvolvi novas competências de como gerir uma turma deste
género.
Durante a temporada passada na escola, tive a oportunidade de conviver com professores
de outras áreas, funcionários com os quais tive uma relação de cordialidade. Os alunos em
ambiente externo às aulas sempre mantiveram uma atitude de simpatia em relação a mim.
79
Todas estas experiências, com colegas, alunos, orientadores e professores tornaram-me,
acredito, melhor profissional e fizeram-me evoluir como pessoa.
80
REFERÊNCIAS BIBLIOGRÁFICAS
Arends, R. (1995). Aprender a ensinar. Lisboa: Editora McGraw-Hill.
Ausubel, D. (1980). Psicologia educacional. 1ª Edição. Rio de Janeiro: Editora Interamericana.
Coll, C., Martín, E., Mauri, T., Miras, M., Onrubia, J., Solé, I., & Zabala, A. (2001). O
construtivismo na sala de aula. São Paulo: Editora Ática.
Crato, N. (2006). O «Eduquês» em discurso direto: uma crítica da pedagogia romântica e
construtivista.
Acedido
em:
18
de
dezembro
de
2014,
em:
www.filedu.com/ncratoeduques.pdf.
DGFV. (2005). Programa - Componente da Formação Técnica da Disciplina de Programação e
Sistemas
de
Informação.
Acedido
em:
30
de
novembro
de
2013,
em:
http://www.anqep.gov.pt.
DGFV. (2005). Programa da disciplina de Linguagens de programação. Acedido em: 2 de
fevereiro de 2014, em: http://www.anqep.gov.pt.
ESAS. (2011). Escola Secundária Alberto de Sampaio - Projeto Educativo. Acedido em: 11 de
novembro de 2013, em: http://www.esas.pt.
IGEC. (2011). Avaliação Externa das Escolas - Relatório Escola Secundária de Alberto Sampaio.
Acedido em: 28 de outubro de 2013, em: http://www.ige.min-edu.pt.
Jonassen, D. (2007). Computadores, ferramentas cognitivas: para desenvolver o pensamento
crítico nas escolas. Porto: Porto Editora.
Morais, P. & Pires, J. (2002). Python: Curso completo. Lisboa: FCA.
81
Papert, S. (1980). Mindstorms - Children, Computers and Powerful Ideas. Second edition. New
York: Basic Books.
Papert, S. (1995). La máquina de los niños. 1ª Edición. Barcelona: Editorial Paidós.
Pinheiro, J. & Ramos, L. (2005). Métodos Pedagógicos. Lisboa, Instituto do Emprego e
Formação Profissional. Acedido em: 18 de dezembro de 2014, em: opac.iefp.pt.
Ramos, J. L. (2013). Pensamento computacional na escola, no currículo e na aprendizagem.
[Vídeo]. DGE
– Webinars. Disponível em
30
de Janeiro de 2013, em
http://webinar.dge.mec.pt/2013/01/30/pensamento-computacional-na-escola-nocurriculo-e-na-aprendizagem/.
Ribeiro, G. (2012). O Ensino da História. Lisboa: Fundação Francisco Manuel dos Santos.
Silva, M. (2001). Sala de aula interativa. A educação presencial e à distância em sintonia com a
era digital e com a cidadania. Acedido em: 3 de janeiro de 2014, em:
www.unesp.br/proex/opiniao/np8silva3.pdf.‎
Silva, M. (2006). Sala de aula interativa. 4ª Edição. Rio de Janeiro: Editora Quartet.
Veiga, H. (2007). Indisciplina e violência na escola: práticas comunicacionais para professores e
pais. Coimbra: Almedina.
Vygotsky L. (1978). Mind in society: The development of higher psycological processes. MA:
Harvard University Press. Cambridge.
Wing, J. M. (2006). Computational Thinking. Communications of the ACM March 2006/Vol. 49,
No. 3
82
ANEXOS
Anexo 1: Planificação do módulo 17 E
MÓDULO N.º 17E (OP5) - FERRAMENTAS DE DESENVOLVIMENTO DE PÁGINAS WEB
Objectivos de ensino/ Conteúdos
1. Modelos (Templates)
2. Folhas de Estilos
2.1. Painel css;
2.2. Estilos css personalizáveis
2.3. Folha de estilos externa
3. Integração com outras aplicações (ex. Javascript)
4. Requisitos para a criação de um site dinâmico
4.1. Linguagem script PHP
5. Ligação a Base de dados
5.1. Construção de Base de dados
5.2. Ligação à base de dados
6. Criação de fontes de conteúdo dinâmico
7. Inserção de conteúdos dinâmicos
8. Trabalhar com páginas dinâmicas
8.1. Mostrar registos da base de dados
8.2. Criação de página principal/detalhes de registo
8.3. Criar páginas de pesquisa a bases de dados
8.4. Restrição de acesso ao site
9. Trabalhar com páginas dinâmicas
9.1. Mostrar registos da base de dados
9.2. Criação de página principal/detalhes de registo
9.3. Criar páginas de pesquisa a bases de dados
9.4. Restrição de acesso ao site
Objectivos de
Aprendizagem/Competências
1. Utilizar Modelos (Templates).
2. Interagir com outras Aplicações.
Estratégias/Sugestões Metodológicas



3. Utilizar um servidor virtual num
computador pessoal
4. Criar e Configurar Bases de Dados


5. Ligar Bases de dados com a
aplicação criada
83
Apresentar os conceitos fomentando
sempre que possível o debate com os
alunos.
Envolver o aluno na sua própria
aprendizagem, de modo a permitir-lhe
desenvolver a autonomia e iniciativa.
Observação
directa
do
trabalho
desenvolvido pelo aluno durante as aulas,
tendo em atenção a qualidade do trabalho
realizado e a forma como o aluno o gere,
organiza e autoavalia.
Resolver de exercícios, sempre que
possível utilizando casos reais.
Desenvolver trabalho de grupo e/ou
individual.
Duração
(Blocos de 90 min.)
25
10. Extensões
Recursos: Computadores c/ acesso à Internet; Quadro; Videoprojector; Aplicações informáticas: WampServer (Apache, PHP,MySQL) ou Xampp
84
Anexo 2: Grelha de observação dos alunos
Grelha de Observação
Ano/Turma: 12º/3P
Nome
11
12
13
14
15
16
17
18
19
20
LEGENDA:
85
Assiduidade:
X Faltou
Positivo: +
Pontualidade:
Y Não
pontual
Negativo: -
Demonstração de
autonomia e
iniciativa própria
Participação e
Empenho
Capacidades e atitudes
Comportamento
Pontualidade
N.º do
aluno
Competências transversais
Assiduidade
Data:
Anexo 3: Planos de aula das aulas observadas pelos supervisores
Aula Nº: 13
Ano: 12º - Período: 2º
Início: 13h35
Data: 23/01/2014
Sala: C 2.3
Fim: 15h05
Supervisores: Altina Ramos e Bento Silva
Orientador cooperante: Hélio Vilas
Estagiária: Elisabete Cunha
Disciplina: Programação e Sistemas de Informação
Módulo: 17E – Ferramentas de desenvolvimento de Páginas Web
Duração da aula: 90 minutos
Sumário: Tipos de dados sequenciais - Listas;
Resolução de problemas.
Conteúdos
Objetivos
Atividades/Estratégias
-------------------------------
-------------------------------
Efetuar a chamada;
-------------------------------
-------------------------------
Registar o sumário;
-------------------------------
-------------------------------
Indução à prontidão;
Recursos
Avaliação
Quadro
Grelha de Observação
Videoprojector
Pontualidade
Computador
86
Windows
1min
1min
Assiduidade
Comportamento
Apresentar os objetivos da aula;
Tempo
2min
Conteúdos
Objetivos
Atividades/Estratégias
Recursos
Python 2.7.6
Introdução ao tipo de
dados sequenciais –
listas;
Entender os
linguagem;
conceitos
da
Avaliação
Tempo
Participação
80min
Diálogo com os alunos;
Ensino de Conceitos;
Saber trabalhar com listas;
Operadores + e *;
Saber utilizar os operadores + e *;
Caraterísticas das
listas;
Alterar (inserir,
remover, atualizar)
valores em listas de
tamanho definido.
Saber fazer alteração e inserção
de valores numa lista de tamanho
definido.
Exposição dos conteúdos de forma
interativa, alternado com questões aos
alunos e promovendo a discussão na sala
de aula;
Utilização do programa Python para
experimentar exemplos;
Interrogar os alunos ao desenvolver
programas de modo a desenvolver o seu
raciocínio;
Resolução de problemas fazendo a
alteração e inserção de valores em listas
de tamanho definido.
-------------------------------
-------------------------------
------------------------------
------------------------------
Resumo da Aula;
5min
Antevisão da próxima aula.
1min
Plano da Aula nº 13 - Módulo 17E
87
Aula Nº: 15
Ano: 12º - Período: 2º
Início: 17h00
Data: 27/01/2014
Sala: C 2.7
Fim: 18h30
Supervisores: Altina Ramos e Bento Silva
Orientador cooperante: Hélio Vilas
Estagiária: Elisabete Cunha
Disciplina: Programação e Sistemas de Informação
Módulo: 17E – Ferramentas de desenvolvimento de Páginas Web
Duração da aula: 90 minutos
Sumário: Listas de tamanho indefinido;
Resolução de problemas;
Conteúdos
Objetivos
Atividades/Estratégias
Recursos
Avaliação
Tempo
-------------------------------
-------------------------------
Efetuar a chamada;
Quadro
Grelha de Observação
1min
-------------------------------
-------------------------------
Registar o sumário;
Videoprojector
Pontualidade
1min
-------------------------------
-------------------------------
Indução à prontidão;
Computador
Apresentar os objetivos da aula;
Windows
Assiduidade
Comportamento
Participação
Python 2.7.6
88
2min
Conteúdos
Tipos de dados
sequenciais – listas:
listas de tamanho
indefinido;
Métodos len, del e
append.
Objetivos
Entender os conceitos da
linguagem;
Atividades/Estratégias
Recursos
Avaliação
Tempo
80min
Diálogo com os alunos;
Ensino de Conceitos;
Saber trabalhar com listas de
tamanho indefinido, utilizando os
métodos len, del e append.
Exposição dos conteúdos de forma
interativa, alternado com questões aos
alunos e promovendo a discussão na sala
de aula;
Utilização do programa Python para
experimentar exemplos;
Interrogar os alunos ao desenvolver
programas de modo a desenvolver o seu
raciocínio;
Resolução de problemas utilizando listas
de tamanho indefinido e os métodos len,
del e append.
-------------------------------
-------------------------------
------------------------------
------------------------------
Resumo da Aula;
5min
Antevisão da próxima aula.
1min
Plano da Aula nº 15 - Módulo 17E
89
Aula Nº: 16
Ano: 12º - Período: 2º
Início: 13h35
Data: 29/01/2014
Sala: C 2.3
Fim: 15h05
Supervisores: Altina Ramos e Bento Silva
Orientador cooperante: Hélio Vilas
Estagiária: Elisabete Cunha
Disciplina: Programação e Sistemas de Informação
Módulo: 17E – Ferramentas de desenvolvimento de Páginas Web
Duração da aula: 90 minutos
Sumário: Fatiar/slicing listas;
Métodos da classe list;
Método randint da classe random;
Resolução de problemas;
Conteúdos
Objetivos
Atividades/Estratégias
Recursos
Avaliação
Tempo
-------------------------------
-------------------------------
Efetuar a chamada;
Quadro
Grelha de Observação
1min
-------------------------------
-------------------------------
Registar o sumário;
Videoprojector
Pontualidade
1min
-------------------------------
-------------------------------
Indução à prontidão;
Computador
Apresentar os objetivos da aula;
90
Assiduidade
Comportamento
2min
Conteúdos
Objetivos
Atividades/Estratégias
Recursos
Windows
Avaliação
Tempo
Participação
Python 2.7.6
Fatiar/slicing listas;
Inserção utilizando
slicing;
Entender os conceitos da
linguagem;
Saber trabalhar com slicing em
listas;
Métodos mais
utilizados da classe
list;
Saber utilizar os métodos da
classe list;
Pesquisa dos métodos
da classe list;
Saber pesquisar métodos na
classe list;
Método randint da
classe random.
Saber utilizar o método randint da
classe random.
80min
Diálogo com os alunos;
Ensino de Conceitos;
Exposição dos conteúdos de forma
interativa, alternado com questões aos
alunos e promovendo a discussão na sala
de aula;
Utilização do programa Python para
experimentar exemplos;
Interrogar os alunos ao desenvolver
programas de modo a desenvolver o seu
raciocínio;
Resolução de um problema utilizando
slicing, os métodos da classe list e o
método randint da classe random.
-------------------------------
-------------------------------
------------------------------
------------------------------
Resumo da Aula;
5min
Antevisão da próxima aula.
1min
Plano da Aula nº 16 - Módulo 17E
91
Anexo 4: Questionário inicial sobre levantamento de requisitos
Questionário programação
Que idade tens?
Possuis computador em casa?
o
Sim
o
Não
Possuis internet?
o
Sim
o
Não
Quais são as matérias na área da informática que tens maiores
dificuldades?
Quais são as matérias que dominas melhor na área da informática?
Gostas de programar?
o
Sim
92
o
Não
Tens alguma dificuldade em programação?
o
Sim
o
Não
Se respondeste sim à questão anterior, explica de que género é a tua
dificuldade.
Sugere uma estratégia que te motive para a programação.
O que ambicionas que este curso profissional te traga
profissionalmente?
Pretendes atingir o ensino superior?
o
Sim
o
Não
O que ambicionas para o teu futuro?
93
94
Anexo 5: Questionário sobre as aprendizagens realizadas pelos alunos
Aprendizagens
Qual o teu nome e apelido?
Tiveste alguma dificuldade na linguagem Python?
o
o
Sim
Não
Se respondeste "sim", à questão anterior, enumera a(s) tua(s)
dificuldade(s):
o
o
o
o
o
Operadores (aritméticos/lógicos)
Variáveis
Ciclo While
Strings
Listas
Explica de que género é(são) a(s) tua(s) dificuldade(s).
95
Anexo 6: Questionário sobre a avaliação final feita pelos alunos das minhas aulas
Avaliação das aulas
Numa escala de 1 a 5, sendo 1-medíocre, 2-insuficiente, 3-satisfaz, 4-bom e 5-muito bom. Marca um valor
desta escala para responderes às 7 questões que se seguem.
Realizei a tarefas que me foram indicadas?
1
2
3
4
5
Gostei da forma como as aulas foram lecionadas?
1
2
3
4
5
Gostei das atividades que me foram propostas?
1
2
3
4
5
A professora tirou as minhas dúvidas?
1
2
3
4
5
A professora criou um ambiente de interatividade?
1
2
3
4
5
96
Fiquei motivado para programar em Python?
1
2
3
4
5
Aumentei a minha autonomia no desenvolvimento de programas em Python?
1
2
3
4
5
97
Anexo 7: Código do programa sobre o problema “Jornada de futebol”
98
99
Download