O Scratch no ensino da
programação
Coimbra, 2014-05-31
!
!
UK National Curriculum
Tabela:	
  h)p://www.compu2ngatschool.org.uk/data/uploads/CASPrimaryCompu2ng.pdf	
  
Primary	
  school	
  pupils	
  in	
  England	
  will	
  be	
  taught	
  
computer	
  programming	
  as	
  part	
  of	
  an	
  overhaul	
  
of	
  the	
  na3onal	
  curriculum	
  that	
  will	
  see	
  ICT	
  
replaced	
  with	
  compu2ng	
  across	
  all	
  levels	
  of	
  
educa2on	
  from	
  September	
  2014.	
  
	
  Fonte:	
  h)p://www.techweekeurope.co.uk/news/na2onal-­‐curriculum-­‐ict-­‐educa2on-­‐compu2ng-­‐121214	
  
!
“Computational Thinking”
! Abordagem	
  à	
  resolução	
  de	
  problemas	
  
! Decomposição	
  em	
  sub-­‐problemas	
  
! Reconhecimento	
  de	
  padrões	
  
! Abstracção	
  
! Pensamento	
  lógico	
  e	
  algorítmico	
  
! Soluções	
  eficientes	
  
! Inovação	
  e	
  Cria3vidade	
  
!
Imagem:	
  h)p://cdvideoweb.com/wp-­‐content/uploads/2013/09/prog.png	
  
Linguagens de programação
!
Linguagens de programação
Imagem:	
  h)ps://netbeans.org/images_www/v6/9/screenshots/ruby.png	
  
!
! Raciocínio	
  lógico	
  
! Abstracção	
  
! Análise	
  de	
  problemas	
  
! Abordagem	
  sistémica	
  
! Superficialidade	
  
! Compe2dores	
  externos	
  (contextos	
  hiper	
  es(mulantes)	
  
!  Tempo	
  e	
  dedicação	
  
Ensino da programação: obstáculos
!
! Foi	
  concebido	
  para	
  crianças	
  com	
  idade	
  entre	
  
os	
  8	
  e	
  os	
  16	
  anos	
  
! Não	
  exige	
  conhecimento	
  de	
  outras	
  linguagens	
  
! U2liza	
  uma	
  interface	
  gráfica	
  
! Programas	
  montados	
  a	
  par2r	
  de	
  blocos	
  
!   Integra	
  diferentes	
  media	
  
! Resultados	
  rápidos	
  e	
  sensorialmente	
  
es2mulantes	
  
Vantagens do Scratch
!
Compatibilidade
!
Versões do Scratch
Versão	
  1.4	
  
instalador	
  offline	
  
Versão	
  2.0	
  
online	
  
!
Comunidades Scratch
http://scratch.mit.edu/
http://kids.sapo.pt/scratch/
http://eduscratch.dge.mec.pt/
Introduzir conceitos
de programação
com recurso ao
Scratch
!
Arquitectura	
  de	
  Von-­‐Neumann	
  
memória	
  
CPU	
  
entrada	
  
input	
  
saída	
  
output	
  
!
Programação: saída | output
!
Programação: saída | output
!
Programação: entrada | input
!
Programação: noção de ordem
!
Programação: noção de sequência
!
Programação: estruturas de repetição
…	
  
!
Programação: estruturas de decisão
!
! Ordenação	
  
•  Bubble	
  sort	
  
•  Selec(on	
  Sort	
  
•  Inser(on	
  sort	
  
•  Quick	
  sort	
  
! Pesquisa	
  sequencial	
  
! Pesquisa	
  binária	
  
!  Outros…	
  
Algoritmos comuns
!
Ordenação: bubble sort
!
Pesquisa sequencial
!
Pesquisa sequencial - C/C++
!
Pesquisa binária
!
Pesquisa binária - C/C++
João Sá
joaosa@anpri.pt
facebook.com/joaosa
twitter.com/joaosa
Imagem:	
  h)p://www.eversfam.com/wp-­‐content/uploads/2012/06/thank-­‐you2.jpg	
  

O Scratch no ensino da programação (Softciências)