Neste post você aprenderá sobre o Scratch. Ele é uma linguagem de programação visual baseada em blocos e uma comunidade on-line voltada principalmente para crianças. Os usuários do site podem criar projetos on-line usando uma interface semelhante a um bloco. O serviço é desenvolvido pelo MIT Media Lab , foi traduzido para mais de 70 idiomas e é usado na maior parte do mundo. O Scratch é ensinado e usado em centros pós-escolares, escolas e faculdades, bem como em outras instituições de conhecimento público. A partir de janeiro de 2019, as estatísticas da comunidade no site oficial do idioma mostram mais de 39 milhões de projetos compartilhados. 

Scratching é uma técnica usada por disc jockeys para misturar clipes musicais de forma criativa e produzir diferentes efeitos sonoros, manipulando discos de vinil em um toca-discos. O Scratch leva o nome desta técnica, pois permite que os usuários misturem diferentes mídias (incluindo gráficos, sons e outros programas) de maneiras criativas, remixando projetos.

Princípios

Scratch incentiva o compartilhamento, reutilização e combinação de código. Os usuários podem criar seus próprios projetos ou optar por “remixar” o projeto de outra pessoa. Os projetos criados e remixados com o Scratch são licenciados sob a licença Creative Commons Attribution-Share Alike. O Scratch dará automaticamente crédito ao usuário que criou o projeto e o programa original.

Faz parte da pesquisa projetar novas tecnologias para melhorar o aprendizado em centros pós-escolares e outros ambientes de educação informal, além de ampliar as oportunidades para os jovens que podem se tornar designers e inventores. O Scratch foi desenvolvido com base na interação contínua com jovens e funcionários da Computer Clubhouses . O uso do Scratch na Computer Clubhouse serviu de modelo para outros centros pós-escolares, demonstrando como os contextos de aprendizagem informais podem apoiar o desenvolvimento da fluência tecnológica. 

História

O MIT Media Lab, grupo liderado por Mitchel Resnick , em parceria com o Montreal baseados empresa de consultoria, o brincalhão Invenção Company, co-fundada por Brian Silverman e Paula Bonta , juntamente desenvolveu a primeira versão desktop do Scratch em 2003. Começou como uma linguagem básica de codificação, sem categorias rotuladas e sem bandeira verde. Scratch foi feito com a intenção de ensinar as crianças a codificar.

Em 6 de maio de 2013, o Scratch fechou por três dias para atualizar para o Scratch 2.0 e foi lançado em 9 de maio de 2013. A atualização mudou a aparência do site e incluiu um editor de projetos on-line. Um editor de Scratch 2 off-line também foi disponibilizado. Com sua introdução, os blocos personalizados podem ser definidos dentro dos projetos, juntamente com várias outras melhorias.

Em 2017, o Scratch 2.0 ficou disponível on-line e como um aplicativo para Windows , macOS , Linux ( requer Adobe Air ) e não oficialmente para Android como um arquivo APK . O Scratch 2.0 Offline editor pode ser baixado para Windows, Mac e Linux diretamente do site do Scratch, mas depois o suporte para o Linux foi descartado. A versão móvel não oficial deve ser baixada dos fóruns do Scratch.

O Scratch 3 foi anunciado pela primeira vez pela Equipe Scratch em 2016. Várias versões alfa públicas foram lançadas entre então e janeiro de 2018, após o qual as versões pré-beta “Preview” foram lançadas. Uma versão beta do Scratch 3 foi lançada em 1 de agosto de 2018, substituindo a pré-beta “preview” e está disponível para uso na maioria dos navegadores, com a notável exceção do Internet Explorer . A primeira versão do Scratch 3.x, 3.0 foi lançada em 2 de janeiro de 2019.

A diferença mais notável entre o 3.x e as iterações antes dele é um design “material” que se estende por toda a interface. A parte “player do projeto” do site também foi atualizada para este design no lançamento do Scratch 3.0, já que o site foi sendo lentamente atualizado desde 2016 para o design do material.

Scratch 3.x não é baseado no 2.0 – em vez disso, é uma base de código baseada em HTML5 completamente nova, composta de vários componentes, como “Scratch-GUI”, a parte principal do programa, e “Scratch-VM”, que interpreta o código.

No 3.x, a presença do estágio também é colocada de volta no lado direito da tela, como nas versões 1.xx, em vez de na esquerda, como nas versões 2.0.x. Outros recursos incluem tradução de idiomas, conversão de texto em fala e compatibilidade com várias partes físicas da tecnologia, como o micro-bit da BBC ; esses recursos estão disponíveis por meio de plug-ins internos conhecidos como “extensões”. Os usuários também podem criar suas próprias extensões para o Scratch 3.0 usando Javascript , semelhante a como os usuários também podem criar extensões usando JavaScript para uma versão especial do Scratch 2.0 chamada “Scratch X” (que não é mais suportada devido ao lançamento do 3.0).

O Scratch 3.0 também tem novos recursos, como Música , Makey Makey , Text to Speech , LEGO MINDSTORMS EV3 , LEGO Education WeDo 2.0 , BB3 e sensor de vídeo . O mais popular provavelmente seria uma caneta .

Ao contrário do Scratch 2.0, o Scratch 3 segue o Versioning Semântico, portanto, o número “menor” do número da versão é alterado, em vez de apenas o número do “patch” mudar. No entanto, atualmente, não há nenhuma parte no código do Scratch 3 que realmente mantenha um número de versão, e atualmente não há uma caixa de diálogo “Sobre” para relatar o número da versão ainda.

O Scratch 3.0 foi oficialmente lançado pelo MIT em 2 de janeiro de 2019.

 

Uso educacional

O Scratch era popular no Reino Unido através dos Code Clubs . Scratch é usado como linguagem introdutória porque a criação de programas interessantes é relativamente fácil, e as habilidades aprendidas podem ser aplicadas a outras linguagens de programação, como Python e Java .

O Scratch não é exclusivamente para criar jogos. Com os recursos visuais fornecidos, os programadores podem criar animações, textos, histórias, músicas e muito mais. Já existem muitos programas que os alunos podem usar para aprender tópicos em matemática, história e até mesmo fotografia. O Scratch permite que os professores criem lições conceituais e visuais e tarefas de laboratório de ciências com animações que ajudam a visualizar conceitos difíceis. Dentro das ciências sociais, os instrutores podem criar questionários, jogos e tutoriais com elementos interativos. O uso do Scratch permite que os jovens entendam a lógica da programação e como criar e colaborar de forma criativa.

O Scratch é ensinado a mais de 800 escolas e 70 faculdades da organização DAV na Índia e em todo o mundo.

O professor David J. Malan, da Harvard University, prefere usar Scratch sobre linguagens de programação introdutória, como Java ou C, em seu curso introdutório de ciência da computação. No entanto, há um benefício limitado em uma educação de nível universitário. Malan mudou o idioma do curso para C depois da primeira semana. 

Interface do Usuário

A interface do Scratch possui três seções principais: uma área do palco , uma paleta de blocos e uma área de codificação para colocar e organizar os blocos em scripts executáveis.

A área do palco apresenta os resultados (ou seja, animações, gráficos de tartaruga , etc., em tamanho pequeno ou normal, com tela cheia também disponível) e todas as miniaturas de sprites listadas na área inferior. O estágio usa coordenadas x e y , sendo 0,0 o centro do palco; o palco tem 480 pixels de largura e 360 pixels de altura, x: 240 sendo a extrema direita, x: -240 sendo a extrema esquerda, y: 180 sendo a parte superior, e y: -180 sendo a parte inferior. Com um sprite selecionado na parte inferior da área de preparação, os blocos de comandos podem ser aplicados arrastando-os da paleta de blocos para a área de codificação, contendo todos os scripts associados ao sprite selecionado. Cada um também pode ser testado individualmente sob diferentes condições e parâmetros através de um duplo clique. Na guia Scripts , todos os blocos disponíveis são listados e categorizados. Há também uma guia de extensões que permite que outros blocos sejam adicionados.

Ao lado da guia Scripts, há a guia Costumes, onde os usuários podem alterar a aparência do sprite para criar vários efeitos, incluindo animação. A última aba é a aba Sons, onde os usuários inserem sons e músicas para um sprite.

Ao criar sprites e planos de fundo, os usuários podem desenhar seu próprio sprite manualmente com o “Paint Editor” fornecido pelo Scratch, escolher um Sprite de uma biblioteca ou fazer o upload de uma imagem.

SCRATCH 3.x

A interface do usuário para o Scratch 3.x é projetada com uma aparência simples, com a paleta de blocos à esquerda, a área de scripts no meio e o estágio à direita. A paleta de blocos é projetada como uma interface rolável, com seções rotuladas que trazem o usuário para diferentes seções dele. No canto inferior esquerdo estão as extensões; quando clicado, exibe uma lista das extensões do Scratch que podem ser adicionadas à paleta de blocos como novas seções. Blocos maiores na área de codificação são projetados para funcionar em dispositivos de toque.

A tabela abaixo mostra as categorias da paleta de blocos no Scratch 3.x (algumas categorias vistas anteriormente em 2.0 são agora extensões e, portanto, não estão listadas):

Ligue o Arduino e examine como cada LED está aceso de forma diferente.

Como você viu com este experimento, a tensão que usamos para conectar ao LED faz a diferença em quão brilhante ele é. Quanto maior a tensão, mais brilhante é o LED. Uma voltagem mais baixa levará a LEDs dimmer.

SCRATCH 2.0

No Scratch 2.0, a área do palco está no lado esquerdo, com a paleta de blocos no meio. Ao contrário do 3.0, a paleta de blocos é composta de seções discretas que não são roláveis de uma para a outra. Do lado direito está a área de codificação. Na versão 2.0, as extensões são arquivadas dentro da seção “mais blocos” da paleta de blocos

Em comparação com as versões anteriores do Scratch, as áreas foram reorganizadas na versão 2.0, como anteriormente a paleta de blocos estava na área esquerda, a área de sprite selecionada e a área de scripts associada a um sprite selecionado estavam no meio da tela, e a área do palco com miniaturas de sprites listadas abaixo estava na área direita da tela. 

A tabela abaixo mostra as diferentes seções da paleta de blocos no rascunho 2.0:

Extensões

Scratch 2 e 3 suportam ambas as extensões, que adicionam blocos extras e recursos que podem ser usados em projetos. No Scratch 2, as extensões eram todas baseadas em hardware, mas extensões baseadas em software foram adicionadas no Scratch 3. Além de adicionar novas extensões, o Scratch 3.x também moveu alguns blocos padrão no Scratch 2.0 para a seção de extensões, como Música e Caneta. . A partir do Scratch 3.x, a equipe do Scratch planeja adicionar novas extensões regularmente.

Física:
  • EV3 – controle os motores e receba dados do sensor do LEGO EV3

  • BBC micro: bit – uso de um micro: bit BBC para controlar projetos

  • LEGO Education WeDo 2.0 – controle os motores e receba dados dos sensores da LEGO WeDo

  • Makey Makey – use o Makey Makey para controlar seus projetos

Digital:
Muitas das extensões digitais no Scratch 3 costumavam ser categorias de bloco regulares que foram movidas para a seção de extensões para reduzir a desordem. Esses incluem:

  • Music – Tocar instrumentos digitais (bateria, trompetes, violinos, pianos e mais)
  • Caneta – Desenhe no Palco com uma variedade de espessuras e cores
  • Video Sensing – Detectar movimento com a câmera.
 No entanto, foram adicionadas novas extensões digitais que não estavam disponíveis no Scratch 2 em colaborações com empresas. Esses incluem: 
  • Text to Speech – Converte palavras em texto em saída de voz (variedade de vozes, fornecida pela Amazon )
  • Traduzir – Usa o Google Tradutor para traduzir texto de um idioma para uma variedade de outros idiomas

Comunidade de usuários

O Scratch é usado em muitos ambientes diferentes: escolas, museus , bibliotecas , centros comunitários e residências. Embora a principal faixa etária do usuário do Scratch seja de 8 a 18 anos de idade, o Scratch também foi criado para educadores e pais. Esse amplo alcance criou muitas comunidades vizinhas, físicas e digitais.

Comunidade On-line

No Scratch, os membros têm a capacidade de compartilhar seus projetos e obter feedback. Os projetos podem ser enviados diretamente do ambiente de desenvolvimento para o site do Scratch e qualquer membro da comunidade pode baixar o código-fonte completo para estudar ou remixar em novos projetos. Os membros também podem criar estúdios de projetos, comentar, marcar, favoritos e “amar” outros projetos, seguir outros membros para ver seus projetos e atividades e compartilhar idéias. Os projetos variam de jogos a animações e ferramentas práticas. Além disso, para incentivar a criação e o compartilhamento entre os usuários, o site frequentemente estabelece os desafios do “Scratch Design Studio”.

O MIT Scratch Team garante que essa comunidade mantenha um ambiente amigável e respeitoso para pessoas de todas as idades, raças, etnias, religiões, orientações sexuais e identidades de gênero. Todos os membros devem fornecer feedback de forma construtiva e relatar qualquer conteúdo que não siga as diretrizes da comunidade. Para garantir ainda mais essa comunidade, a Equipe do Scratch gerencia a atividade do site e responde aos relatórios diariamente.

Há também uma comunidade online para educadores, chamada ScratchEd. O ScratchEd foi desenvolvido e apoiado pela Harvard Graduate School of Education. Nesta comunidade, os educadores do Scratch compartilham histórias, trocam recursos, fazem perguntas e encontram pessoas.

Scratch Wiki

O Scratch Wiki é um wiki de tamanho médio para a linguagem de programação educacional Scratch e seu site, história e fenômenos que o cercam. O wiki é suportado pelo Scratch Team (desenvolvedores do Scratch), mas é principalmente escrito por Scratchers (usuários do Scratch) para obter informações sobre projetos e coisas interessantes para os usuários. No entanto, os Scratchers devem ter suas contas aprovadas pela administração do Wiki para participar.

Eventos

Os Scratch Educators podem se reunir pessoalmente nos Meetups do Scratch Educator. Nesses encontros, os Scratch Educators aprendem uns com os outros e compartilham ideias e estratégias que apoiam a criatividade computacional. 

Um “Dia do Risco” anual é declarado em maio de cada ano. Os membros da comunidade são encorajados a realizar um evento neste dia, grande ou pequeno, que celebre o Scratch. Esses eventos são realizados em todo o mundo e uma listagem pode ser encontrada no site do Dia do Rascunho.

Recursos e derivados

O Scratch usa programação orientada a eventos com vários objetos ativos chamados sprites. Sprites podem ser desenhados, como gráficos vetoriais ou de bitmap , do zero em um editor simples que faz parte do Scratch, ou podem ser importados de fontes externas.

A versão atual do Scratch não trata procedimentos como estruturas de primeira classe e possui opções limitadas de E / S de arquivos com o Protocolo de Extensão do Scratch 2.0; um recurso de extensão experimental que permite a interação entre o Scratch 2.0 e outros programas.  O protocolo de extensão permite a interface com placas de hardware como o Lego Mindstorms ou o Arduino.  O Scratch 3 suporta apenas matrizes unidimensionais , conhecidas como “listas”, e escalares e strings de ponto flutuante são suportados, mas com capacidade limitada de manipulação de strings. Há um forte contraste entre as poderosas funções multimídia e o estilo de programação multi-thread e o escopo bastante limitado da linguagem de programação Scratch.

O código-fonte do Scratch e seus derivados são baseados no Squeak , que é baseado no Smalltalk -80. A versão 2 do Scratch é implementada no ActionScript , com um interpretador baseado em JavaScript experimental sendo desenvolvido em paralelo.

Uma série de derivativos Scratch chamados de Scratch Modifications foram criados usando o código-fonte do Scratch versão 1.4. Esses programas são uma variante do Scratch que normalmente inclui alguns blocos extras ou alterações na GUI.

Em julho de 2014, um programa chamado ScratchJr foi lançado para o iPad. Em 2016, o ScratchJr foi desenvolvido para Android. Embora tenha sido fortemente inspirado pelo Scratch e co-liderado por Mitch Resnick, o criador original do Scratch, não deixa de ser uma reescrita completa concebida para crianças mais novas.

Algumas modificações também introduzem mudanças na abordagem subjacente à computação, como a linguagem Snap! , com procedimentos de primeira classe (seus fundamentos matemáticos também são chamados de cálculo lambda ), listas de primeira classe (incluindo listas de listas) e sprites verdadeiramente orientados a objetos de primeira classe com herança de protótipos e sprites aninhados, que não fazem parte do Scratch. Snap! (sua versão anterior foi chamada BYOB) foi desenvolvida por Jens Mönig com documentação fornecida por Brian Harvey da Universidade da Califórnia, Berkeley.e tem sido usado para ensinar o curso introdutório “A Beleza e a Alegria da Computação” em CS para alunos não-principais da computação.

Segue a baixo um vídeo com o passo a passo da instalação do Scratch:

Quem Somos!

Loja Virtual

Útimos Posts

1 comentário em “Iniciando com Scratch”

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *