Prévia do material em texto
Primeiras práticas na programação em Scratch Você vai conhecer os principais conceitos na plataforma de programação Scratch e, a partir dela, desenvolver habilidade na ferramenta para construir projetos incríveis. Prof. Paulo Gomes 1. Itens iniciais Propósito Ajudar a entender e praticar os conceitos de programação por meio da ferramenta Scratch. Objetivos Descrever a programação e sua importância. Reconhecer a programação em blocos. Reconhecer o Scratch. Aplicar o Scratch. Introdução Novas metodologias de programação têm ajudado a democratizar um espaço que antes era majoritariamente feito por pessoas que trabalhavam na área e/ou estudavam a respeito das linguagens de programação. O modelo de programação em blocos veio para facilitar e otimizar a vida de programadores que estão simpatizando com novas aplicações, ou mesmo para deixar mais fluido o fluxo de trabalho de desenvolvedores mais experientes. Sabendo disso, uma ótima ferramenta para ser inserida nesse mundo, tão democrático e vasto, foi desenvolvida. Trata-se de uma plataforma de low-code que primeiramente teve uma idealização de uso restrita apenas a crianças e jovens, mas quando programadores e entusiastas passaram a utilizar essa plataforma, viram que ela representa uma ferramenta poderosa para consolidação de conceitos e fácil entendimento, além de proporcionar diversas maneiras divertidas de ensinar e compartilhar conhecimento. Com isso, a plataforma Scratch teve uma popularização e consequentemente uma boa recepção do público, seja ele formado por crianças, jovens ou adultos. • • • • 1. Definindo a programação A importância da programação Os benefícios de aprender a programar Neste vídeo explicaremos como programar não é difícil e gera vários benefícios. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Segundo o Guia Salarial da consultoria de recrutamento Robert Half (2022), o setor de tecnologia é o que possui maior demanda por profissionais. Falar que o setor de tecnologia está aquecido em praticamente todas as vertentes é algo que se tornou praticamente um pleonasmo. As empresas brigam todos os dias pelos melhores profissionais da área. Por isso, é importante que cada indivíduo que queira se destacar em sua profissão saiba, ao menos, o básico de programação. Não, essa afirmação não é muito pretensiosa! Basta olhar ao redor e perceber o mundo no qual estamos inseridos. Aprender sobre códigos e linguagens de programação pode ser decisivo na vida profissional, já que o mercado de trabalho necessita cada vez mais de gente que entenda sobre o assunto. Aliado a isso, aprender sobre códigos pode trazer uma série de outros benefícios agregados. Um dos maiores benefícios está na mudança mental. Pessoas que aprendem a programar tendem a organizar melhor as ideias, assim como desenvolvem uma maior criatividade para resolver os problemas comuns do dia a dia. Segundo Mitchel Resnick (2014), pesquisador renomado do Instituto de Tecnologia de Massachusetts (MIT), programar é tão importante quanto ler e escrever, necessidades básicas de qualquer humano. Outro aspecto importante é a fluência em programação. Assim como o aprendizado de qualquer idioma, ter capacidade de entender e se comunicar com as máquinas é uma habilidade útil para todos. Conhecendo um pouco mais Muitos conceitos que veremos aqui, embora pareçam abstratos demais à primeira vista, podem ser compreendidos a partir de elementos do cotidiano, como guardar informações, obedecer a um passo a passo, repetir tarefas, decidir-se entre duas opções etc. Todos esses comandos são vistos por nós diariamente, e à medida que nos familiarizamos, nossa mente passa a trabalhar com eles de forma natural, ou seja, muitas vezes nem percebemos que são comandos lógicos seguindo uma sequência para chegar a determinado resultado. Quando tratamos de programar, temos basicamente as mesmas regras do nosso dia a dia. Com a única diferença que devemos seguir um padrão para chegar ao resultado esperado. Conceitos básicos de programação Neste vídeo explicaremos de forma didática os conceitos básicos de programação. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Programação A programação computacional, ou apenas programação, nada mais é do que a forma como nos comunicamos com os computadores. Quando falamos de computadores, isso diz respeito a todo e qualquer equipamento eletrônico que possua algum sistema de processamento de dados. A programação é responsável por dizer como a máquina deve funcionar e quais ações ela vai executar. A programação se utiliza do que chamamos de códigos para informar como os computadores devem proceder e o que devem executar. Para que um código consiga transmitir tais informações, é necessário que ele contenha instruções claras e precisas para as máquinas, e isso se dá por meio das linguagens de programação. Códigos São um conjunto de instruções que seguem um comando lógico, utilizando de uma linguagem de programação para que um computador execute determinada função. De forma resumida, código é um passo a passo escrito pelos programadores, utilizando uma linguagem que os computadores entendem. Quando esse código obedece a lógica computacional, executa uma lista de tarefas criada pelo programador, na qual cada linha escrita por ele define o que e como tudo deve ser feito. Linguagens de programação É um tipo de linguagem com regras e instruções, que permite a um programador se comunicar e controlar uma máquina. Essa linguagem se dá por meio de uma série de instruções formais, cada qual com um objetivo. A partir da escrita dessas instruções, conseguimos criar códigos. Comentário Os códigos serão responsáveis por executar ordens, ações consecutivas e coletar dados. Se tudo estiver escrito da maneira correta, vamos conseguir criar programas para controlar o comportamento físico e/ou lógico de uma máquina. Cada linguagem tem o seu propósito e cada uma delas pode ser utilizada em determinada circunstância e com o seu próprio modo de escrita. Algumas linguagens têm uma forma de escrita mais orientada ao entendimento da máquina (linguagem de baixo nível) e outras linguagens são escritas para que o programador entenda de forma mais fácil as instruções que serão dadas à máquina (linguagem de alto nível). Tipos de linguagem Neste vídeo explicaremos de forma didática os tipos de linguagem de programação. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Linguagem de programação de baixo nível É o tipo de linguagem totalmente orientada para o entendimento dos computadores. Essa linguagem é basicamente uma interface conjunta entre hardware e software, estando mais próxima à simbologia que as máquinas se utilizam de maneira mais primitiva. Em virtude disso, elas possuem a forma de escrita (sintaxe) mais complexa e não possuem nenhum comando intuitivo. Linguagem da máquina É o tipo de linguagem mais primitiva quando tratamos de linguagens de programação de computadores. Essa linguagem é denominada código binário e utiliza apenas dois valores (0 e 1), sendo capaz de comunicar qualquer coisa só com esses dois números. São esses valores que dizem para o computador o que ele precisa fazer, desde uma tecla que digitamos até a execução de um programa. Mas, ainda que possamos dar comandos com uma sequência de apenas dois algarismos, é um pouco complicado precisar entender o que essa sequência de números significa, não é mesmo? Por isso, foi criada a Assembly, primeira linguagem de programação que se popularizou com a tentativa de substituir a linguagem dos computadores por uma mais fácil de ser entendida pelos seres humanos. Linguagem Assembly Essa linguagem existe desde meados da década de 50, sendo uma das primeiras linguagens estruturadas (linguagem com sequência, decisão e repetição) e que permitiu programar os computadores de forma menos complexa. Essa linguagem é uma versão mais fácil de escrever o código da máquina devido a sua notação ser em formato de texto. Linguagemde programação de alto nível Visa à facilitação entre o entendimento do programador e o computador, pois se utiliza de instruções mais próximas aos desenvolvedores de programas do que a linguagem de uma máquina. Essa linguagem tem como objetivo a facilitação da maneira de programar, pois é mais intuitiva, amigável e fácil de aprender, principalmente para quem está iniciando na área de programação. Uma linguagem de alto nível possui a sintaxe voltada para o entendimento humano. As linguagens de alto nível abstraem conceitos voltados para a máquina e deixam os comandos mais claros. Vamos tomar como exemplo as palavras “function” e “delete”. Elas são instruções nessas linguagens que, como os termos em inglês sugerem, chamam uma função ou deletam algum dado, respectivamente. Novas metodologias de programação Como funciona o low-code e o no-code? Neste vídeo, conheça as principais diferenças entre low-code e no-code. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Low-code e no-code são técnicas de desenvolvimento de aplicações que visam facilitar e agilizar a criação de programas por meio do reaproveitamento de códigos. Elas utilizam ferramentas de interface visual para criar aplicações com pouco ou nenhum código, desfrutando apenas de lógica básica e alguns recursos de arrastar e soltar, o que é bem diferente do que teríamos com o desenvolvimento tradicional. Low-code As plataformas low-code fornecem uma interface gráfica do usuário (Graphical User Interface ou GUI), permitindo arrastar e soltar blocos de códigos que representam tarefas comuns de desenvolvimento de uma aplicação. Essa abordagem pode ser usada por pessoas com certo conhecimento em lógica de programação para desenvolver aplicativos simples ou mais complexos, que provavelmente exigiriam codificação em uma linguagem de programação. Por mais que ainda precise de certo conhecimento de lógica de programação, uma plataforma low-code permite aos usuários criar e implantar aplicativos com um uso mínimo de códigos manuais. Por isso, normalmente é utilizada para criar aplicativos que provavelmente exigirão integração com outros sistemas e várias fontes de dados. No-code As plataformas no-code, teoricamente, permitem que qualquer pessoa sem qualquer conhecimento prévio de programação crie soluções por meio de recursos visuais, como arrastar e soltar, sem necessidade alguma de escrever códigos ou programação. Nesse método, o desenvolvimento ocorre de maneira mais ágil. Isso representa um trabalho cada vez menor de codificação e possibilita a realização de testes automatizados. Métodos de programação Um computador precisa de um código bem escrito, com ordens claras e precisas para chegar ao resultado esperado todas as vezes que for executado. Com isso, podemos dizer que quando utilizamos fluxogramas ou passo a passos (algoritmos) com a mesma clareza e precisão, esperamos que uma tarefa possa ser executada da mesma forma por qualquer pessoa que seguir as instruções. No entanto, mesmo quando utilizamos esses métodos, acabamos por ter limitações, pois embora os algoritmos ou os fluxogramas possam apresentar as suas finalidades, eles estão limitados a ser apenas um exercício de lógica, não tendo nenhuma funcionalidade prática ou objetivo além da visualização dos conceitos. Apesar de o uso de fluxogramas e algoritmos ajudarem a entender os primeiros conceitos de lógica de programação, ainda precisamos trabalhar bastante para que eles sejam associados à programação de um computador real, o que pode nos levar a gastar muito mais tempo em um estudo dos métodos até se chegar a um aprendizado sólido. Com isso, surgiu a necessidade de um método de programação que pudesse ser transmitido de forma visual e menos complexa do que um código em uma linguagem de programação, mas que também pudesse ter em sua funcionalidade prática a criação de programas reais. O método de programação em blocos surgiu, então, para ajudar na transmissão de um conhecimento puramente visual, para algo mais voltado à comunicação com os computadores, mas que ainda mostrasse um pouco de familiaridade com o cotidiano, principalmente de crianças e adolescentes, foco principal desse método. Nesse método de programação, os blocos são representados por uma unidade de código fundamental e podem executar comandos, condições, variáveis e funções que fazem parte da construção de um programa. Eles também podem receber dados, fazer operações, além de possuir integração com outras plataformas de programação. Verificando o aprendizado Questão 1 É uma característica de linguagem de programação de baixo nível. A É uma linguagem totalmente orientada para o entendimento dos computadores. B É uma linguagem totalmente orientada para o entendimento dos humanos. C É uma linguagem totalmente orientada para o entendimento dos computadores, utilizando-se de métodos como low-code. D É uma linguagem totalmente orientada para o entendimento dos computadores, utilizando-se de métodos como no-code. E É uma linguagem feita exclusivamente a partir de códigos binários. A alternativa A está correta. A linguagem de programação de baixo nível é a mais próxima que um computador pode interpretar, podendo ser escrita por meio de códigos binários (0 ou 1) ou linguagem Assembly. Questão 2 É correto afirmar que A as linguagens de programação são um conjunto de instruções que seguem um comando lógico, utilizando de um código de programação para que um computador execute determinada função. B os códigos nada mais são do que a forma como os computadores se comunicam conosco. C uma linguagem de programação é um tipo de linguagem com regras e instruções, que permite a um programador se comunicar e controlar uma máquina. D os códigos são um conjunto de instruções que seguem ou não um comando lógico, utilizando de uma linguagem de programação para que um computador execute determinada função. E quando falamos de computadores, isso diz respeito apenas a equipamentos eletrônicos que possuem displays de visualização de dados. A alternativa C está correta. Essa é a definição correta a respeito de linguagem de programação. Toda linguagem de programação deve obedecer às regras e instruções que permitem ao desenvolvedor conseguir se comunicar com a máquina. 2. Um novo método de programar Programação baseada em blocos Neste vídeo explicaremos de forma didática a programação em blocos. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. O que é a metodologia baseada em blocos? A programação em blocos é uma nova metodologia que tem se mostrado promissora no ensino de programação para quem quer desenvolver o raciocínio lógico e a capacidade de pensar e resolver problemas. Trata-se de uma metodologia que não faz uso de uma linguagem de programação propriamente dita por parte do usuário. Por isso, quem se utiliza dela, não precisa se preocupar com a escrita de códigos complexos e regras de sintaxe. No entanto, os blocos utilizados para gerar os comandos devem seguir uma lógica de programação, caso contrário, seu projeto não irá executar o projeto corretamente. Na programação em blocos, usamos blocos pré-programados no lugar das linhas de código. Esses blocos têm formas e cores específicas para ajudar a diferenciar sua função, bastando apenas utilizá-los por meio de comandos de clicar e arrastar até o projeto, até que seja criada uma sequência lógica para realizar a tarefa. Resumindo Uma plataforma de programação baseada em blocos é como um quebra-cabeça, no qual cada peça é responsável por um código. Quando montamos uma sequência de peças em uma sequência lógica, conseguimos escrever um programa. Sabendo disso, podemos dizer que a programação em blocos é uma metodologia visualmente amigável, que tem como objetivos práticos: ensinar os principais conceitos iniciais ligados à programação, auxiliar no desenvolvimento de softwares e melhorar nossa lógica computacional. Os códigos podem se utilizar de dados que nós inserimos, como nomes, operações matemáticas,números e operações lógicas. Eles possuem todos os requisitos para a criação de um programa, contando com estruturas de início, meio e fim. Essas estruturas são responsáveis por inserir dados importantes no início do programa e iniciá-lo de forma correta. Posteriormente, podemos tratar esses dados para retornar com um resultado e apresentá-los. Objetivos da metodologia baseada em blocos Com a ajuda da programação em blocos, é possível construir códigos de complexidades variadas. O que vai mudar o grau de complexidade do nosso projeto é o conhecimento em lógica de programação e objetivo do programador que está por trás da plataforma de construção. Podemos criar projetos mais simples, como um projeto de soma de dois números inteiros, ou mesmo criar um projeto bem mais complexo, como um jogo da memória. Dependendo da habilidade do programador, um projeto simples também pode se tornar complexo, visto que pode conter muitos blocos repetidos, desorganizados e/ou códigos que não estão sendo utilizados. A programação em blocos é uma forma muito interessante para começar o estudo da programação com a utilização dos blocos que vão iniciar seu código, seguindo o fluxo de execução deles. Sabendo disso, podemos ter uma visualização melhor a respeito da utilização de operadores lógicos, operadores aritméticos, estruturas condicionais, estruturas de repetição, variáveis e funções. Todas essas noções são imprescindíveis a qualquer pessoa que queira aprender a programar. Ao entender essas noções de forma prática, a transição entre uma metodologia baseada em blocos para uma linguagem de programação será natural, pois a maior diferença entre uma metodologia em blocos e uma linguagem de programação é a sintaxe, ou seja, a forma como os códigos são escritos. A lógica e a construção dos códigos são as mesmas para todas as linguagens de programação. Scratch, uma plataforma de programação em blocos Neste vídeo explicaremos de forma didática a programação em Scratch. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. O que é o Scratch? É uma linguagem de programação criada pelo grupo Lifelong Kindergarten, do Instituto de Tecnologia de Massachusetts (MIT), e tem como objetivo ensinar conceitos fundamentais de programação, lógica e algoritmos para pessoas no mundo todo, tendo seu foco principal em crianças e adolescentes. O Scratch é uma plataforma de low-code on-line que pode ser aplicada no ensino de praticamente qualquer disciplina, desde o nível mais básico até o ensino superior. Com ajuda dessa plataforma, é possível criar jogos, animações e histórias, bem como controlar objetos no mundo real a partir dos algoritmos feitos com os blocos de programação. O Scratch é uma plataforma de programação em blocos, ou seja, por ser mais “visual”, é mais simplificada que uma plataforma de programação convencional. Isso permite que qualquer um, apenas com a ajuda da lógica, consiga criar projetos digitais com mais facilidade, embora ainda não entenda nada de programação. Com isso, é possível criar suas próprias histórias, jogos e animações interativas. O Scratch ajuda a compreender mais sobre lógica de programação, bem como incentiva o pensamento criativo e raciocínio sistemático. Projetada, desenvolvida e moderada pela organização sem fins lucrativos, Scratch Foundation, essa plataforma é fornecida gratuitamente, bastando apenas ter acesso à internet para começar a criar os seus próprios projetos. Outro dado interessante é que a plataforma possui tradução em mais de 40 idiomas, inclusive em português do Brasil, sendo uma excelente oportunidade para visualizar com mais clareza termos em inglês frequentemente utilizados em linguagens de programação mais convencionais. Objetivo do Scratch Embora desenvolvido inicialmente com o intuito de ser utilizado apenas por crianças, hoje em dia, pessoas de qualquer idade se utilizam dessa metodologia de programação da plataforma para aprender conceitos ligados à área. Por mais que a plataforma tenha uma aparência lúdica, amigável e pareça ser feita apenas para crianças, ela é uma ferramenta poderosa para desenvolver as habilidades de raciocínio lógico e conceitos utilizados em qualquer linguagem de programação, tais como: Variáveis Funções Operadores lógicos Aritméticos Condicionais Outra funcionalidade interessante do Scratch é o compartilhamento de projetos e/ou códigos. Qualquer projeto publicado no Scratch pode ter o seu código visualizado e editado por outros usuários da plataforma, o que traz estímulos ao aprendizado autodidata e ao trabalho em equipe. Muitos desses códigos possuem comentários do criador do projeto explicando o que cada um deles faz, isso ajuda a transmitir as informações para outros usuários e complementa ainda mais a troca de conhecimento entre os desenvolvedores. Apesar de parecer uma informação irrelevante, a troca de informações entre os desenvolvedores é uma das práticas mais utilizadas por programadores profissionais no mercado. Existem comunidades inteiras dedicadas apenas ao compartilhamento, desenvolvimento e troca de conteúdo dos chamados softwares open-source, como o GitHub, que atualmente hospeda mais de 100 milhões de projetos. Além disso, o Scratch também possui funcionalidades que podem ser utilizadas no desenvolvimento de projetos mais complexos, integrados em várias outras plataformas, como projetos de robótica que utilizam Arduino, ou controladores que se utilizam de toque em objetos no mundo real para realizar determinadas ações dentro do Scratch. Atenção Ao compreender a utilização da programação de blocos como uma ferramenta de entrada importante para aprofundar nossos conhecimentos na área da programação, podemos deixar de ser apenas consumidores de tecnologia e nos tornar alguém que desenvolve suas próprias soluções tecnológicas. Portanto, conhecer a programação em blocos por meio do Scratch, pode ajudar a compreender as bases utilizadas em todas as linguagens de programação, pois é um método que facilita a visualização do fluxo dos códigos e o que cada comando executa. Verificando o aprendizado Questão 1 Sobre a metodologia baseada em blocos, é correto afirmar que A a programação em blocos é uma metodologia nova, que tem se mostrado promissora no ensino de programação para quem quer desenvolver novas linguagens de programação e aplicações. B • • • • • quem se utiliza da programação em blocos não precisa se preocupar com a escrita de códigos complexos e regras de sintaxe. C na programação em blocos, usamos blocos que vamos programar no lugar das linhas de código. D na metodologia baseada em blocos, um projeto simples nunca poderá ser um projeto complexo, pois os blocos se organizam automaticamente para melhorar o funcionamento do código. E a maior diferença entre uma metodologia em blocos e uma linguagem de programação é a sintaxe, ou seja, a lógica por trás dos blocos. A alternativa B está correta. A metodologia baseada em blocos veio para facilitar o entendimento de certos conceitos antes abstratos. Com isso, há a facilidade de programar sem a preocupação com escrita de códigos e regras de sintaxe, pois todos os blocos já são pré-programados. Questão 2 Sobre o Scratch é correto afirmar que A é uma plataforma de criação de projetos digitais voltada para quem ainda não entende nada sobre programação, já que a lógica também não é necessária para criar qualquer projeto. B é uma plataforma interessante a ser utilizada, mas, infelizmente ainda com a limitação de não estar traduzida para o português, o que reduz a aprendizagem para quem não domina o idioma nativo dela. C a eficácia da plataforma atende apenas aos níveis mais básicos de ensino, não sendo a ferramenta ideal para mostrar a criação de projetos mais complexos que envolvam condicionais, regras de decisão, variáveis etc. Sendo estas limitadas às linguagens de programação convencionais. D uma funcionalidade interessante do Scratch é o compartilhamento de projetos e/ou códigos. Praticamente todos osprojetos publicados no Scratch podem ter seus códigos visualizados, mas não copiados, pois essa função só é permitida mediante assinatura da plataforma. E é uma ferramenta que também pode ser utilizada no desenvolvimento de projetos mais complexos, a exemplo de projetos de robótica que utilizam Arduíno. A alternativa E está correta. O Scratch possui integração com outras plataformas, sendo possível utilizar seus comandos também em uma plataforma de robótica chamada Arduíno, para controlar vários dispositivos compatíveis. 3. Iniciando o Scratch Primeiras impressões Conheça, neste vídeo, a tela inicial e as funções do Scratch por meio de exemplos práticos. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Página inicial Para criarmos o nosso projeto na plataforma do Scratch, devemos entrar no site da plataforma (scratch.mit.edu). Inicialmente, não precisamos fazer nenhum cadastro para acessar os blocos de programação e a área de criação do projeto, tendo apenas a limitação de compartilhamento e comentários em projetos de outros autores enquanto não fizermos a validação da nossa conta. Área de trabalho Vamos falar sobre as principais opções disponíveis ao abrir o site da plataforma Scratch e nos aprofundar nas opções que vamos utilizar para a realização do nosso projeto: Ferramentas e utilidades (destaque alaranjado) Blocos de código (destaque vermelho) Área de programação (destaque verde) Ferramentas de início/fim e modos de visualização (destaque preto) Configurações de objetos (destaque rosa) Área de visualização (destaque azul) Projetos e perfil (destaque roxo) Renomear projeto e compartilhar (destaque branco) Veja a seguir a captura de tela da plataforma Scratch. • • • • • • • • As opções com destaque branco e roxo podem aparecer de forma diferente, tendo em vista que elas só são ativadas caso seja criada uma conta na plataforma do Scratch. Para fazer isso, basta clicar na área de destaque roxo, onde está a opção “Inscreva-se”. Seguindo o passo a passo dela (disponível em português do Brasil), você conseguirá criar a sua conta e posteriormente as opções ficarão semelhantes à imagem acima. A criação da conta é algo opcional, mas recomendado para que você possa trabalhar em seu projeto, embora precise sair, ou para poder visualizar outros projetos e compartilhar os seus com todas as pessoas com acesso à internet. Ferramentas e utilidades Veja a seguir a plataforma Scratch, com destaque para a área na qual ficam localizadas as ferramentas e utilidades. A área em destaque tem as seguintes funções: Caso o idioma da sua plataforma esteja em inglês ou em qualquer outro idioma, é recomendado, inicialmente, trocá-lo na opção (2) e selecionar o idioma “Português brasileiro” para uma melhor compreensão da aula e dos conceitos que serão apresentados. Evite utilizar a tradução automática de navegadores, pois essa tradução pode não ser tão efetiva e algum bloco de código pode aparecer com o título diferente, impedindo o correto funcionamento do seu projeto. Blocos de código Veja a seguir a plataforma Scratch, com destaque para a área na qual está localizada a guia Código. Na parte mais à esquerda da plataforma, na guia Código, encontramos 9 tipos de blocos de programação separados por cores, veja: Após encontrarmos os comandos na guia Código, vamos utilizar o mouse para arrastar e soltá-los na área de programação. Por enquanto não vamos focar nas outras guias, pois inicialmente o objetivo é focar alguns blocos de programação mais importantes, não sendo necessário nos aprofundar nas ferramentas de edição e criação de atores, tampouco em configurações de som. Área de programação É o local onde vamos colocar os códigos selecionados na guia de código. Todos os blocos de programação que aqui estiverem poderão ser executados caso haja algum evento de início. Quando este não estiver presente, o código não será executado de forma automática (exceto se você clicar manualmente sobre a programação). Para apagar qualquer código que você não precisa ou que trouxe por engano, basta selecionar, arrastar e soltar o código (ou os códigos) na parte onde se encontram os blocos de código. Se quiser apagar um bloco que se encontra no meio de outros blocos, você necessariamente terá que retirar os códigos abaixo do código incorreto (não precisa apagá-los, apenas colocar em outro lugar na área de programação) e aí você pode selecionar o código incorreto e soltá-lo na parte onde ficam os blocos de código que ele será apagado. Não se preocupe em apagar os blocos ou utilizar novos blocos. Eles estarão sempre disponíveis, podendo utilizar ou apagar qualquer um deles sempre que precisar. Não há um local específico para você colocar seus códigos, eles podem ser soltos em qualquer lugar na área de programação. A única coisa que você deve se preocupar é na hora de montar sua programação, pois os códigos precisam estar juntos, como em um quebra-cabeças, seguindo uma ordem lógica, para então executar corretamente o projeto. Na parte inferior direita da área de programação temos as seguintes opções: Lupa com o símbolo + (aproxima nossa visualização dos códigos). Lupa com o símbolo – (afasta nossa visualização dos códigos). Lupa com o símbolo = (mostra todos os códigos do ator selecionado, independentemente onde eles estejam). Veja na imagem com destaque para o local onde fica a área de programação: • • • Ferramentas de início/fim e modos de visualização Veja abaixo a Plataforma Scratch, com destaque para a área onde ficam as ferramentas de iniciar/parar o projeto e modos de visualização. Essas ferramentas são responsáveis pelas seguintes funções: Configurações de objetos Nessa área, encontramos as definições do(s) nosso(s) personagem(ns) na área inicial. Aqui encontramos os seguintes dados do(s) ator(es): Nome Tamanho Se ele está visível ou não Direção que está apontado Qual a localização dele em relação ao centro do cenário Os botões clicáveis azuis significam, da esquerda para a direita, respectivamente: • • • • • Excluir ator Adicionar ator Adicionar cenário Na numeração (1) destacada, encontram-se os atores do projeto, podendo haver apenas 1 ou vários, dependendo do projeto que você está criando. Caso você apague todos os atores, perceberá que alguns blocos da área de programação somem. Isso ocorre porque a plataforma não consegue iniciar certos comandos caso não haja o que programar na área de visualização (no caso um ator). Caso você apague um ator sem querer, basta clicar na opção (2) e selecionar um novo ator que seja mais conveniente para o seu projeto. Área de visualização Nessa área você verá todos os atores e cenários adicionados ao seu projeto, desde que tenha deixado eles visíveis. Todos os atores são arrastáveis nessa área. Você pode movimentá-los livremente em qualquer direção e soltá-los que eles ficarão no mesmo lugar. Lembrando que essa área de visualização sempre vai obedecer aos códigos inseridos na área de programação, ou seja, se você definir uma posição fixa para o personagem, por mais que você o arraste para outro lugar da tela, ele vai obedecer a programação sempre que esta for iniciada. Veja a seguir a tela da plataforma Scratch, com destaque para a área de visualização dos atores e cenários. Projetos e perfil 1. 2. 3. Nessa área encontramos duas outras funções importantes da plataforma, que só serão ativadas caso você crie uma conta. Se você optar por não criar uma conta, as informações que irão aparecer aqui incluem a inscrição no Scratch (criar conta) e entrar na sua conta que anteriormente foi criada. Se você já criou a sua conta, aparecerão as seguintes opções: Renomear projeto e compartilhar Caso tenha optado por criar uma conta e validar com seu e-mail, essas opções ficarão disponíveis. Aqui é possível renomear o seu projeto e compartilhá-lo para que outras pessoas tenham acesso a ele e façam comentários, elogios, sugestões, além de poderem criar “remixes”(cópias autorizadas) do seu projeto. Veja a seguir a captura de tela da Plataforma Scratch, com destaque para a área onde se encontra a opção de renomear e compartilhar o projeto (a opção de compartilhar fica disponível apenas depois de confirmar sua conta). Plataforma Scratch, com destaque para a área onde se encontra a opção de renomear e compartilhar o projeto (a opção de compartilhar fica disponível apenas depois de confirmar sua conta). Verificando o aprendizado Questão 1 Sobre as funcionalidades do Scratch, podemos dizer que A na opção de ferramentas e utilidades podemos alterar as configurações do nosso ator. B os blocos de código são responsáveis por criar a programação propriamente dita, sendo possível criar projetos sem necessariamente se utilizar de um padrão lógico. C a opção “pare”, contida nas ferramentas de início/fim, é responsável por parar um projeto, independentemente se ele contém algum código sendo executado. D na área de visualização, todos os atores podem ser movimentados livremente em qualquer direção e eles ficarão no mesmo lugar ao soltá-los, independentemente se os códigos inseridos na área de programação definirem uma posição fixa para estes atores. E é na área de programação que podemos ver todos os atores e cenários adicionados ao projeto, desde que você tenha deixado eles visíveis. A alternativa C está correta. A opção "pare" pode parar qualquer programação que esteja sendo executada no projeto, não obedecendo nenhum outro código de repetição ou condição. Quando você seleciona essa opção, todos os códigos em execução param e só voltam a iniciar caso você clique na opção início (bandeira verde) ou inicie a programação por outro evento. Questão 2 Quantos tipos de blocos de programação existem no Scratch? A 12 B 11 C 10 D 9 E 8 A alternativa D está correta. Existem 9 tipos de bloco de programação no Scratch, que são: Movimento (1), Aparência (2), Som (3), Eventos (4), Controle (5), Sensores (6), Operadores (7), Variáveis (8), Meus blocos (9). 4. Primeiro projeto Primeiros comandos Neste vídeo exemplificaremos e explicaremos de forma didática os primeiros comandos com o Scratch. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Lógica antes de tudo Todos as ferramentas e códigos que utilizaremos já foram apresentados. A partir de agora, vamos colocar em prática alguns conceitos para criação de um projeto propriamente dito, por isso, é importante que você tenha observado ou mesmo acessado a plataforma do Scratch anteriormente. Vamos utilizar principalmente as opções que se encontram nos blocos de código, na área de programação e área de visualização. Antes de começarmos a programar, vamos pensar na lógica por trás da nossa calculadora? Imagine ter que fazer a soma de números com 5 dígitos. Você pode até conseguir fazer a conta de cabeça, mas provavelmente vai demorar um pouco para somar os dois números e entregar o resultado. Vamos dizer que os números são um pouco complicados para somar, por isso pegamos um papel e uma caneta para escrever os números para depois fazer essa soma. Primeiro recebemos o dado do primeiro número, anotamos e depois recebemos o dado do segundo número e anotamos ele também. Tendo essas informações, podemos prosseguir para a soma e depois para resultado. Se você seguiu todos os passos corretamente, provavelmente conseguiu chegar ao resultado esperado, logo, o que tivemos que pensar de forma lógica foi alguma coisa parecida com isso: Número 1 = X Número 2 = Y Resultado = ? Tendo isso em mente para a programação do nosso projeto, os blocos de código que iremos utilizar seguirão basicamente esse passo a passo que fizemos. Por isso, utilizaremos alguns blocos que serão capazes de salvar números, fazer operações com eles e nos mostrar os resultados. Os outros blocos são opcionais, mas podem ser utilizados eventualmente para criar um projeto com outras funções, caso você veja necessidade. Spoiler Para nossa primeira atividade, vamos criar um projeto com um código para que o nosso ator faça a soma de dois números. Para que esse projeto tenha o resultado esperado, vamos trabalhar com os seguintes blocos de código: • • • Plataforma Scratch, com destaque aos blocos de código, desordenados, utilizados para o projeto. Resultado esperado para a soma dos números. Os blocos de código na imagem estão todos desorganizados, ou seja, mesmo que todos estejam corretos em sua funcionalidade, caso não obedeçam a uma ordem lógica, não chegarão ao resultado esperado. Blocos de eventos Neste vídeo vamos te ajudar a compreender, por meio de exemplos, como funcionam os blocos de eventos. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Aqueles que iniciam a programação Ao clicar na guia Código, percebemos que existem vários comandos coloridos, cada um agrupado por uma cor que representa o tipo de código para determinada funcionalidade. Nosso primeiro bloco de código a ser utilizado está na parte de “Eventos”. Os blocos encontrados nessa opção são responsáveis pelo início de toda a programação que pode ser utilizada no Scratch, podendo iniciá- las de diversas formas diferentes. Para nosso primeiro projeto, vamos utilizar o evento mais básico, veja: Captura de tela da plataforma Scratch. Para acessar esse bloco, basta clicar na opção “Eventos” e os blocos serão mostrados assim como na imagem anterior. Ao encontrar o bloco destacado, basta arrastá-lo e soltar em qualquer lugar na área de programação. Lembrando que não existe um local certo ou errado para colocar o seu bloco de programação nesse primeiro momento. Será necessário organizarmos os blocos apenas quando montarmos a nossa programação, visando o passo a passo dos blocos de código. Caso você tenha feito tudo corretamente até aqui, a área de programação do seu projeto estará parecida com isso: Captura de tela da plataforma Scratch. Esse será o único bloco de evento a ser utilizado em nosso projeto inicial e, como podemos notar, esse bloco contém em sua parte superior uma forma arredondada, não sendo possível colocar nenhum bloco acima dele, visto que os blocos de eventos sempre iniciam outros códigos. Aqueles que interagem com outros códigos O próximo bloco a ser utilizado no projeto encontra-se na opção “Sensores”. Essa opção é responsável por agrupar operadores lógicos (retornam com valores de verdadeiro ou falso). Esses blocos também interagem com outros blocos de programação, além de também receberem dados dos usuários. Os sensores são importantes para o projeto porque serão responsáveis por guardar as respostas dos nossos dois números em outra opção chamada “Variável” (Não se preocupe em saber o que é uma variável agora). Agora vamos até a opção “Sensores”, representada pela cor azul clara. Ao clicar na opção, temos a seguinte imagem: Captura de tela da plataforma Scratch. Vamos utilizar o código destacado para continuar com a nossa programação, que agora se utilizará dos dados fornecidos pelo usuário para armazená-los e depois fazer operações aritméticas com eles, nesse caso uma operação de soma entre dois números inteiros. Nesse segundo momento, é valido você ir agrupando os códigos em uma ordem lógica pois, assim como vimos a lógica por trás dessa programação, temos que ir para o próximo passo, que é guardar o primeiro número para depois somá-lo com o próximo número. Se você pegou o código destacado na imagem, arrastou e soltou embaixo do bloco de evento, sua programação está ficando assim: Captura de tela da plataforma Scratch. Porém, quando trazemos o bloco, percebemos que já existe uma pergunta escrita no bloco a ser utilizado. Sabendo disso, você pode clicar na frase “Qual é o seu nome?”, apagar o que está escrito e substituir pela frase que você achar interessante para armazenar o primeiro número. Vamos utilizar “Qual é o primeiro número?”, mas fique à vontade para colocar qualquer frase, pois ela não vai influenciar no resultado. Blocos de variáveis Neste vídeo vamos te ajudara compreender, por meio de exemplos, como funcionam os blocos de variáveis. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Aqueles que armazenam dados As variáveis, resumidamente, são valores que podem ou não ser alterados durante a execução de uma programação. Como uma caixa, que pode armazenar qualquer tipo de conteúdo, sejam números, letras ou símbolos. As variáveis serão importantes para o projeto, pois serão responsáveis por armazenar os números do nosso cálculo, bem como utilizar esses números guardados para realizar operações aritméticas. Sabendo disso, vamos agora até a opção “Variáveis” para termos acesso às opções que vão nos levar ao próximo passo lógico, que seria o armazenamento do primeiro número. Veja quais os blocos contidos na opção das variáveis: Captura de tela da plataforma Scratch. Se você fez tudo certo até aqui, vai entender agora que o nosso passo lógico de salvar os números na variável “Número 1” é igual ao passo a passo feito quando estávamos apenas pensando na lógica por trás do nosso projeto. Com isso em mente, vamos até a opção “Criar uma variável” e atribuir um nome a essa variável. Seguindo o passo a passo lógico feito anteriormente, chamaremos a nossa primeira variável de “Número 1”, mas você pode dar o nome que quiser. Lembre-se apenas de gravar qual variável será utilizada para fazer a soma. Caso você tenha feito os passos corretamente, seu bloco de código ficou assim: Captura de tela da plataforma Scratch. Captura de tela da plataforma Scratch. Captura de tela da plataforma Scratch. Com a nossa variável criada, temos a opção de guardar a reposta da nossa pergunta anterior, que foi “Qual é o primeiro número?”. Para fazer isso, temos que ir até a opção “Mude minha variável para 0” e alterar para a opção “Mude (nome que você deu para sua variável) para 0”. Veja: Captura de tela da plataforma Scratch. Captura de tela da plataforma Scratch. Como colocamos o nome da primeira variável de “Número 1”, nosso bloco de código ficou como na imagem anterior. Agora, vamos adicionar o bloco destacado à nossa área de programação. Sempre siga a ordem dos blocos de acordo com a nossa lógica feita com o passo a passo. Tendo isso em mente, a programação está ficando assim: Captura de tela da plataforma Scratch. Armazenando as respostas Neste vídeo explicamos, por meio de exemplos, como funciona o armazenamento de respostas. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Como guardamos as respostas? Se você clicou na bandeira verde, percebeu que nossa programação já está mostrando um resultado preliminar. Se ainda não clicou e clicar agora, você terá algo assim no seu projeto: Captura de tela da plataforma Scratch. Vamos lá, então! O brilho na programação significa que ela está ativa, ou seja, o código está sendo executado e está parado em algum código, o que nos leva à resposta para a segunda pergunta. Caso escreva uma resposta na caixa de texto e aperte “enter”, você verá que nossa resposta ainda não está sendo armazenada dentro da variável. Para que isso aconteça, devemos ir novamente até a opção de “Sensores” e trazer o bloco “resposta” e soltá-lo dentro do bloco de variável que acabamos de adicionar, veja: Captura de tela da plataforma Scratch. Agora você consegue imaginar para onde essa resposta vai? Exatamente, a resposta vai para a nossa primeira variável, “Número 1”. Ao digitar um ou mais dígitos na caixa de texto e apertar a tecla “enter”, você verá que nossa variável armazenou esse dado. Caso tenha colocado letras ou símbolos na nossa variável, ela poderá até armazenar esse dado, mas não será possível realizar operações aritméticas com ele. Captura de tela da plataforma Scratch. Perguntando o segundo número Se quiser continuar com o projeto sem que ele continue ativo, basta apertar no botão pare ao lado da bandeira verde, localizado na área de início/fim do projeto. Note também que, ao colocar algum número em nossa variável, ela fica armazenada na caixa de variável, o que não será um problema, tendo em vista que, ao executar o código novamente, os dados anteriores serão descartados. Captura de tela da plataforma Scratch. Guardando o segundo número Para isso, temos que criar novamente uma variável, da mesma forma que criamos a primeira. Vamos colocar o nome da variável que vai armazenar o segundo número de “Número 2”. Captura de tela da plataforma Scratch. Vamos armazenar a resposta do segundo número na variável que acabamos de criar. Faremos o mesmo processo utilizado para adicionar o bloco de variáveis anterior, alterando o bloco de variáveis para a nossa nova variável, correspondente ao segundo número que utilizaremos no projeto. Captura de tela da plataforma Scratch. Criando a nossa última variável É a variável responsável por armazenar o resultado da nossa operação de soma entre os dois primeiros números. Com isso em mente, vamos à criação da variável “Resultado”, adicionando o bloco de resultado embaixo do bloco anterior. Se você criou a variável corretamente, seu código estará assim: Captura de tela da plataforma Scratch. Caso você queira testar seu projeto para saber se a sua programação está correta até o momento, pode testar da mesma forma que testou da primeira vez. Você perceberá que agora a variável do segundo número já armazena os dados de resposta. Blocos de operadores Neste vídeo exemplificaremos e explicaremos blocos de operadores. Conteúdo interativo Acesse a versão digital para assistir ao vídeo. Fazendo cálculos Para chegarmos ao resultado final, ou seja, a soma dos números que estão armazenados nas variáveis, precisamos utilizar blocos que se encontram na opção “Operadores”. Nos blocos de operadores, encontramos as principais regras de operadores lógicos. Aqui, podemos utilizar comandos de soma, subtração, multiplicação e divisão, bem como conceitos de maior, menor ou igual. Como vamos realizar uma operação de soma, iremos utilizar o bloco que contém o símbolo de “+” e está destacado na imagem a seguir. Após trazer esse bloco para nossa área de programação, vamos adicioná-lo à variável “Resultado”. Captura de tela da plataforma Scratch. Após adicionar o bloco de operadores à variável “Resultado”, vamos agora adicionar ao operador de soma os números que foram armazenados nas variáveis “Número 1” e “Número 2”, nos espaços em branco. Nosso código ficará parecido com isso: Captura de tela da plataforma Scratch. Captura de tela da plataforma Scratch. Captura de tela da plataforma Scratch. Para que as variáveis onde estão armazenados os números e a variável onde que fica a resposta apareçam na área de visualização, basta você clicar na caixa de seleção que está ao lado das variáveis, veja: Captura de tela da plataforma Scratch. Se alguma das variáveis não estiver visível, tente mover as demais variáveis arrastando e soltando em outra posição da área de visualização, do mesmo jeito que você pode fazer com os atores. Juntando operadores, variáveis e texto Nossa última linha de códigos compreende em nosso ator escolhido mostrar a resposta da nossa soma por meio de uma caixa de texto. Para que isso aconteça, vamos utilizar um bloco de “diga Olá! por 2 segundos”, encontrado na opção “Aparência”. Veja o código: Captura de tela da plataforma Scratch. Agora vamos configurar o que o ator vai falar, pois, caso deixemos o código assim, ele fará a soma dos dois números e colocará o resultado da soma na variável de resultado, mas não dirá a resposta que está no resultado. Para programar isso, temos que colocar os blocos de operadores que juntam dados inseridos por nós ou armazenados nas variáveis. Esse bloco está na opção “Operadores”. Devemos inseri-lo no espaço da palavra “Olá” no bloco de aparência. Se você fez tudo certo até o momento, sua programação ficará parecida com esta na imagem: Captura de tela da plataforma Scratch. A última etapa consiste em escrever uma frase no primeiro espaço em branco do operador “junte maçã com banana por 2 segundos”para dizer algo como “O resultado da soma é:”. O Segundo espaço desse operador vai receber o valor da variável “Resultado”. Esse bloco terá a função de juntar nossa frase com uma variável. Com isso, nosso último código ficará assim: Captura de tela da plataforma Scratch. Agora você já completou toda sua programação. Você pode iniciar o seu projeto e compará-lo com o primeiro exercício lógico que fizemos para montar o passo a passo dessa soma. Sabendo tudo isso, você agora pode brincar com outros operadores, adicionar novas variáveis de números e pedir para nosso código falar outras respostas. O limite é a sua imaginação. Tudo que você precisa saber é que todos os blocos de programação devem seguir uma sequência lógica. Se você entender todos esses conceitos, sua transição para as linguagens de programação será natural e muito mais fluida. Verificando o aprendizado Questão 1 Sobre o processo de criação de um projeto no Scratch, é correto afirmar que A precisamos apenas de lógica para montar os projetos, não sendo realmente necessária a utilização de linguagens de programação para atingir um objetivo com os blocos de código. B caso nossa programação não tenha o bloco de início “quando bandeira verde for clicada”, não será possível iniciar nossos códigos. C os blocos que são encontrados na opção “Sensores” são responsáveis por agrupar operadores aritméticos. D as variáveis, resumidamente, são valores que não podem ser alterados durante a execução de uma programação. E é possível fazer um cálculo com um número armazenado em uma variável, mesmo que nela também esteja uma letra. O que os operadores farão é ignorar as letras e considerar apenas os números inseridos na variável. A alternativa A está correta. Não é necessária nenhuma escrita ou utilização de linguagens de programação no Scratch, sendo necessária apenas o uso da lógica com ajuda de comandos de arrastar e soltar. Questão 2 A respeito dos blocos de operadores: A Nenhum bloco de operadores pode juntar números e letras. B Eles são representados pela cor laranja. C Eles possuem, até o momento, apenas as opções de cálculos de soma e subtração, devido às limitações da plataforma Scratch. D Eles podem iniciar códigos. E Eles podem alterar variáveis. A alternativa E está correta. Os operadores podem alterar variáveis, uma vez que elas são livres para receber e armazenar qualquer tipo de dado de entrada. Os operadores lógicos podem ser inseridos no mesmo código que o de uma variável e, como eles também têm funções de dados de entrada, qualquer novo dado inserido neles pode ser suficiente para alterar essa variável. 5. Conclusão Considerações finais Como vimos, a programação é importante para termos uma série de benefícios que vão além de um bom emprego. Mesmo para quem não procura enveredar pelos caminhos de programador, ter um conhecimento técnico a respeito de programação certamente é e será um diferencial para a era digital na qual estamos vivendo. Com ajuda da plataforma Scratch, conseguimos visualizar melhor os processos de criação de um código, além de criar um link entre o raciocínio lógico e a forma como ele pode nos auxiliar em algo prático que possui uma forma entendida pela máquina. Podcast Ouça este podcast, no qual fazemos um panorama sobre o que foi discutido até aqui e apresentamos novos casos de aplicação do Scratch em programação. Conteúdo interativo Acesse a versão digital para ouvir o áudio. Explore + Confira as indicações que separamos especialmente para você! Pesquise no Youtube o vídeo legendado de Por que todos deveriam aprender a programar? e, melhor ainda, o vídeo completo em inglês Code Stars - Short Film, na grande plataforma de ensino em programação Code.org. Não deixe de assistir Como Criar sua Conta no Scratch | Curso Grátis Atualizado 2022, entre outras aulas de Scratch. Confira também o site invertexto.com/codigo-binario, que traduz código binário para texto ou texto para código binário. Referências CARBINATTO, B. Carreiras quentes: veja as áreas com mais demanda por profissionais para 2023. VC S/A, 2022. RESNICK, M. Transformar 2014 - Palestra Mitchel Resnick. PORVIR, YouTube, 12 de setembro de 2014. HALF, R. Salary Guide 2022. Numbers Worth Knowing. Consultado na internet em: 3 de mar. 2023. Primeiras práticas na programação em Scratch 1. Itens iniciais Propósito Objetivos Introdução 1. Definindo a programação A importância da programação Os benefícios de aprender a programar Conteúdo interativo Conhecendo um pouco mais Conceitos básicos de programação Conteúdo interativo Programação Códigos Linguagens de programação Comentário Tipos de linguagem Conteúdo interativo Linguagem de programação de baixo nível Linguagem da máquina Linguagem Assembly Linguagem de programação de alto nível Novas metodologias de programação Como funciona o low-code e o no-code? Conteúdo interativo Low-code No-code Métodos de programação Verificando o aprendizado 2. Um novo método de programar Programação baseada em blocos Conteúdo interativo O que é a metodologia baseada em blocos? Resumindo Objetivos da metodologia baseada em blocos Scratch, uma plataforma de programação em blocos Conteúdo interativo O que é o Scratch? Objetivo do Scratch Atenção Verificando o aprendizado 3. Iniciando o Scratch Primeiras impressões Conteúdo interativo Página inicial Área de trabalho Ferramentas e utilidades Blocos de código Área de programação Ferramentas de início/fim e modos de visualização Configurações de objetos Área de visualização Projetos e perfil Renomear projeto e compartilhar Verificando o aprendizado 4. Primeiro projeto Primeiros comandos Conteúdo interativo Lógica antes de tudo Spoiler Blocos de eventos Conteúdo interativo Aqueles que iniciam a programação Aqueles que interagem com outros códigos Blocos de variáveis Conteúdo interativo Aqueles que armazenam dados Armazenando as respostas Conteúdo interativo Como guardamos as respostas? Perguntando o segundo número Guardando o segundo número Criando a nossa última variável Blocos de operadores Conteúdo interativo Fazendo cálculos Juntando operadores, variáveis e texto Verificando o aprendizado 5. Conclusão Considerações finais Podcast Conteúdo interativo Explore + Referências