Prévia do material em texto
PENSAMENTO COMPUTACIONAL Introdução 1 Motivação As dez habilidades essenciais do profissional do futuro (Fórum Econômico Mundial) 1. Resolução de problemas complexos 2. Pensamento crítico 3. Criatividade 4. Gestão de pessoas 5. Coordenação 6. Inteligência Emocional 7. Capacidade de julgamento e de tomada de decisões 8. Orientação para servir 9. Negociação 10. Flexibilidade cognitiva 2 Motivação ● Inclusão ○ Para exercer cidadania, as pessoas saber lidar com soluções computacionais, presentes em todas as áreas ■ Química - propriedades das diferentes matérias, e reações química - entender melhor o mundo ao seu redor ■ Física - conhecer e entender melhor os fenômenos da natureza ● Produtividade ○ Agilidade e velocidade na execução das tarefas ○ Solução de problemas de forma muito mais rápida e até mesmo aumentando a escala do problema com demandas mais complexas 3 Motivação ● Spotify ● Netflix ● Booking ● Google ● Trivago ● Whatsapp ● Midias sociais ● Uber ● OLX ● Smartphone ● Zip Car ● E-mail ● Waze ● Nuvem ● Youtube ● Facebook ● Tinder e similares ● Banco Online Vamos em frente... Não porque atrás vem gente.. Mas, porque já tem muita gente na nossa frente!! 4 ● Seymour Papert (1972) destaca os benefícios do uso do computador na educação (LOGO) ● O termo Pensamento Computacional (Computational Thinking) foi apresentado por Seymour Papert em 1980 ● O termo ganhou repercussão e disseminação com o artigo de Jeannette Wing (2006) Pensamento Computacional (PC) 5 ● Jeannette Wing (2006) “Pensamento Computacional é uma habilidade fundamental para todos, não somente para os cientistas da computação” ● Adicionar o Pensamento Computacional na habilidade analítica de cada criança (juntamente com a leitura, a escrita e a aritmética) ● Diversas definições Wing (2006 a 2014) ○ “são os processos de pensamento envolvidos na formulação de um problema e que expressam sua solução ou soluções eficazmente, de tal forma que uma máquina ou uma pessoa possa realizar” Pensamento Computacional 6 ● “É o processo de reconhecer aspectos da computação em um mundo que nos cerca e, aplicar ferramentas e técnicas da Ciência da Computação para entender e argumentar sobre sistemas e processos naturais e artificiais” (FURBER, 2012) ● “Mesmo após diversos estudos e quase uma década de esforços para definir o PC, ainda existem críticas que sugerem que não sabemos o que o PC significa ou sua forma de medir” (KURSHAN, 2016) ● “É uma abordagem usada para solução de problemas utilizando o que se sabe sobre Computação.” (GOOGLE FOR EDUCATION, 2015) Outras Definições do PC 7 ● "O Pensamento Computacional é uma distinta capacidade criativa, crítica e estratégica humana de saber utilizar os fundamentos da Computação nas mais diversas áreas do conhecimento, com a finalidade de identificar e resolver problemas colaborativamente através de passos claros, de tal forma que uma pessoa ou uma máquina possam executá-los eficazmente" (BRACKMANN, 2017) Outras Definições do PC 8 ● É um processo de resolução de problemas que inclui (não somente) as seguintes características: (CSTA, 2015) ○ formulação de problemas de forma que computadores e outras ferramentas possam ajudar a resolvê-los; ○ organização lógica e análise de dados; ○ representação de dados por meio de abstrações como modelos e simulações; ○ automatização de soluções a partir do pensamento algorítmico; ○ identificação, análise e implementação de soluções visando a combinação mais eficiente e eficaz de etapas e recursos; ○ generalização e transferência de soluções para uma ampla gama de problemas Definição Operacional do PC 9 ● “É saber usar o computador como um instrumento de aumento do poder cognitivo e operacional humano” (BLIKSTEIN, 2008) ● Dividido em duas etapas: a) Identificação das tarefas cognitivas que podem ser executadas com mais rapidez e eficiência fazendo o uso da computação b) Programação do computador para que este realize as tarefas cognitivas identificadas na etapa anterior Outras Definições do PC 10 Pensamento Computacional ● Na revisão sistemática elaborada por (KALELIOGLU, 2016), foram analisados 125 artigos, na tentativa de definição do termo 11 Pensamento Computacional ● Capacidade de sistematizar, representar, analisar e resolver problemas (Diretrizes para ensino de Computação na Educação Básica - SBC) ● É aplicado para descrever, explicar e modelar o universo e seus processos complexos 12 O que não é PC ● Pensamento Computacional não é saber navegar na internet, enviar e-mail, publicar um blog, operar um processador de texto ou planilha eletrônica ● Pensamento Computacional pressupõe a utilização do computador como um instrumento capaz de aumentar o poder cognitivo e operacional humano ● Não envolve apenas conceitos de Computação para solução de problemas em suas raízes, pois também agrega práticas de projetar sistemas, entender o comportamento humano e o pensamento crítico (WING, 2010) ● Não é apenas uma atividade de programação de computadores (Computação Desplugada) 13 Habilidades do PC Coleta de dados: capacidade de coletar informações de forma adequada Análise de dados: dar sentido aos dados encontrando padrões e obtendo conclusões Representação de dados: exibir dados através de gráficos, imagens e tabelas Decompor problemas: separar uma tarefa em partes menores e gerenciáveis Abstração: diminuir a complexidade do problema para poder identificar o elemento principal 14 Habilidades do PC Algoritmos e procedimentos: definir um conjunto de passos para resolver um problema ou tarefa Automação: fazer uso de computadores e máquinas para execução de tarefas repetitivas Paralelização: organizar recursos com o fim de realizar tarefas simultaneamente com o intuito de alcançar um objetivo comum Simulação: representar ou modelar um processo 15 Contribuições do PC ● Pensamento Algorítmico ● Aprendizagem Colaborativa ● Resolução de Problemas ● Criatividade ● Raciocínio Lógico ● Interpretação Textual 16 Próxima aula: Pilares do Pensamento Computacional 17 PENSAMENTO COMPUTACIONAL Introdução 18 PENSAMENTO COMPUTACIONAL Pilares do Pensamento Computacional 1 Pilares do Pensamento Computacional ● O PC identifica um problema e o decompõe em elementos menores, que são analisados individualmente, focando apenas em detalhes importantes, e assim criar soluções Fonte: "Introduction to Computational Thinking" , BBC Bitesize, 2015 O pensamento computacional se baseia em quatro pilares que orientam o processo de solução de problemas 2 Decomposição ● Processo que divide os problemas em partes menores para facilitar a resolução, desenvolvimento e gerenciamento ● Análise dos problemas para identificar as partes que podem ser separadas e formas como podem ser reconstituídas para solucionar o problema como um todo ● Possibilita resolver problemas complexos de forma mais simples, facilita a compreensão de novas situações e possibilita projetar sistemas de grande porte 3 Decomposição - Exemplo 1 A decomposição pode ser aplicada no planejamento de uma aula, e as seguintes partes propostas: ○ identificação de conteúdos ○ definição de objetivos educacionais ○ levantamento do conhecimento prévio dos alunos ○ proposta de atividades individuais ou grupo ○ definição do plano de mediação ○ seleção de recursos materiais ○ planejamento da avaliação das aprendizagens 4 Decomposição - Exemplo 2 ● Como calcular a área de um polígono irregular, ou seja, que não tem uma forma conhecida? ● Geoplano: Para determinar a área, a decomposição em partes regulares é fundamental! 5 Decomposição - Exemplo 3 ● Resolver um crime pode ser um problema muito complexo, pois há muitos elementos a serem considerados 6 Reconhecimento de Padrões ● Os padrões são similaridades ou características que algunsproblemas compartilham ● O hábito de identificar padrões nos acompanha desde a infância, é uma construção continuada e o nosso repertório de padrões não para de crescer e de se reconstruir ● No reconhecimento de padrões ao encontrar similaridades ou padrões entre pequenos problemas decompostos ● Quanto mais padrões encontrarmos, mais fácil e rápida será a nossa tarefa geral de solução de problemas 7 Aplicações de Reconhecimento ● Prever o próximo número em uma dada sequência de números ● Identificar uma espécie de pássaro pelo seu padrão de voo ● Estimar a hora a partir da posição do sol ● Antecipar uma possível chegada de chuva a partir da configuração das nuvens ● Identificar o sentido do vento, olhando para os galhos de uma árvore 8 Aplicações de Reconhecimento ● Escolher uma fruta pela cor de sua casca ● Diagnosticar uma doença com base em sintomas, aparências e comportamentos ● Perceber a chegada de uma pessoa pelo ritmo do som de sua pisada ● Identificar uma música pelo padrão de notas músicas de seu início (popularmente conhecido por jogo das sete notas) 9 Reconhecimento - Exemplo 1 ● Identificação de similaridades entre espécies de pássaros ● A partir de um padrão, pode-se descrever outros, simplesmente seguindo o padrão e alterando as características 10 Reconhecimento - Exemplo 2 ● A sequência de padrões e cores pode ser decomposta em subpadrões (A, B, C, D, E e F). 11 Padrões - Exemplo 3 ● Várias situações críticas que podem levar à morte podem ser atenuadas pelo reconheci- -mento de padrões ○ AVC (Acidente Vascular Cerebral) Fonte: https://www.cardiopulmonar.com.br/conhecendo-o-avc/ 12 Reconhecimento - Exemplo 4 ● Reconhecimento de padrões com balões coloridos 13 Abstração ● Filtragem e classificação dos dados, criando mecanismos que permitam separar apenas os elementos essenciais em determinado problema, ignorando detalhes irrelevantes ● Permite criar uma representação (ideia) do que está se tentando resolver ● Essencial é escolher o detalhe a ser ignorado para que o problema seja mais fácil de ser compreendido sem perder nenhuma informação que seja importante para tal 14 Abstração ● É o conceito mais importante do Pensamento Computacional, pois o processo de abstrair é utilizado em diversos momentos (WING, 2006) a) Na escrita do algoritmo e suas iterações b) Na seleção dos dados importantes c) Na escrita de uma pergunta d) Na natureza de um indivíduo em relação a um robô e) Na compreensão e organização de módulos em um sistema 15 ● Coleta seletiva - abstrações podem ser criadas para facilitar a tarefa, ao invés de enumerar todos os itens que podemos encontrar no lixo, agrupamos os resíduos pelo tipo de tratamento que pretendemos dar a eles, como plástico, metal, papel, vidro, orgânico, etc. Abstração - Exemplo 1 16 Abstração - Exemplo 2 ● Mapa do metrô como exemplo de abstração do mundo real Fonte: https://www.metrocptm.com.br/ 17 Algoritmo ● É uma sequência finita de etapas (passos), cada qual executável em um tempo finito, por um agente computacional, natural (humano) ou sintético (computador) ● Um algoritmo é um plano, uma estratégia ou um conjunto de instruções ordenadas para a solução de um problema ou execução de uma tarefa ● A formulação de um algoritmo passa pelo processo de decomposição, reconhecimento de padrões e abstração ● Na execução seguirão os passos pré-definidos, não havendo a necessidade de criar um novo algoritmo para cada uma de suas execuções posteriores ● É o pilar que agrega os demais pilares (WING, 2014) 18 Algoritmo ● As instruções podem ser escritas em formato de diagrama, pseudocódigo (linguagem humana) ou em linguagem de programação (códigos) ● Programa: é uma sequência de instruções escritas em uma determinada linguagem de programação Início enquanto (Condição 1) faça realizar Ação 1 Fim Início Fim Ação 1 Condição 1 Falso Verdade Begin While (x <> 0) do Var := random(10); End; 19 Algoritmo - Exemplo 1 ● Fritar um ovo, não é somente colocar o ovo na frigideira e pronto!! Há uma sequência de passos!! 20 Algoritmo - Exemplo 2 ● Escovar os dentes 21 Algoritmo - Exemplo 3 ● Como chegar ao Kartódromo da Cidade da Criança? Fonte: http://www.cidadedacriancaprudente.com.br/ 22 http://www.cidadedacriancaprudente.com.br/ Exemplo Interdisciplinar ● DECOMPOSIÇÃO: identificar os diferentes aspectos a serem considerados na manutenção de nossa saúde; identificar as categorias de alimentos e as especialidades profissionais que podem nos ajudar ● RECONHECIMENTO DE PADRÕES: reconhecer situações adversas, como peso incompatível com altura e idade ● ABSTRAÇÃO: identificar, para cada aspecto, os índices (por exemplo: índice de massa corporal) e as características a serem consideradas, na escolha de um profissional da saúde. Selecionar os atributos importantes dos alimentos ● ALGORITMOS: importante para definir diversas rotinas, tais como as relativas à alimentação, como distribuir os alimentos ao longo do dia, as rotinas de exercícios, a preparação dos alimentos, a visita aos especialistas, etc. 23 Próxima aula: Como e quando ensinar o Pensamento Computacional 24 PENSAMENTO COMPUTACIONAL Pilares do Pensamento Computacional 25 PENSAMENTO COMPUTACIONAL Como e quando ensinar o Pensamento Computacional 1 Pensamento Computacional ● Capacidade de sistematizar, representar, analisar e resolver problemas ● Baseado em 4 Pilares: ○ Decomposição ○ Reconhecimento de Padrão ○ Abstração ○ Algoritmos 2 ● "Todas as pessoas deveriam aprender a programar computadores, porque isso ensina a pensar." - Steve Jobs - fundador da Apple ● Habilidades do PC estão inseridas entre as dez habilidades do Profissional do Futuro (independentemente da atividade profissional) ● É a nova alfabetização (juntamente com a leitura, a escrita e a aritmética) ● O Ensino do Pensamento Computacional deve impactar a sociedade e o desenvolvimento das pessoas! Por que ensinar PC? 3 Como ensinar o PC ● A resposta está em construção (sempre estará) ● A maioria dos elementos do pensamento computacional são processos e não conteúdos ● Remonta uma discussão antiga, mas sempre atual, sobre formas de relacionar tecnologia e educação ○ O computador pode ser usado na educação como máquina de ensinar ou como máquina para ser ensinada Instrucionismo X Construcionismo 4 Instrucionismo ● O uso do computador como máquina de ensinar consiste na informatização dos métodos de ensino tradicionais (VALENTE, 2016) ● Informações são implementadas no computador e passadas ao aluno na forma de um tutorial, exercício-e-prática ou jogo ● O computador é usado para informatizar os processos de ensino já existentes informação 5 Construcionismo ● Estudante é protagonista da aprendizagem e constrói algo do seu interesse usando o computador (computador com máquina para ser ensinada) ● O computador requer certas ações que são bem efetivas no processo de constru- -ção do conhecimento ● Deriva das ideias de Seymour Papert ● Linguagem Logo 6 ● Diversos países já praticam o ensino do pensamento computacional para crianças e adolescentes ○ Japão, Finlândia, Inglaterra, Estados Unidos e Espanha, entre outros. ● Inserção do Pensamento Computacional na Educação Básica ○ Alunos com aptidão para programação terão descoberto em um estágio inicial ○ Os menos talentosos terão compreensão do mundo digital em que vivem Quando ensinar PC? 7 Iniciativas ● Livro Computação Desplugada (BELL et al, 2011) ○ Estruturado: “Representando as Informações”, “Algoritmos” e “Representando Procedimentos”. 8 Iniciativas ● CODE.ORG é uma organização sem fins lucrativos cujo objetivo é divulgar e ensinar programação a pessoas de todas as idades ○ Recursos para que professores e gestores - campanha de ampliar o ensinode computação nas escolas ● HORA DO CÓDIGO - movimento global que busca mostrar a crianças, jovens, adultos que programar pode estar ao alcance de todos! ○ No Brasil é apoiado pelo Programaê! 9 Iniciativas ● Hora do Código: Tutoriais de uma hora baseados em desenhos animados 10 Iniciativas ● O Programaê! visa disseminar questões relacionadas ao universo dos computadores, como organização de informações, abstração e solução de problemas simples e complexos, e multiplicar experiências educativas de programação entre professores e educadores, aproximando este universo de crianças e jovens de todo o Brasil ○ Fundação Telefônica e Vivo ● Conjunto de sequências didáticas que propõem a inserção de professores e estudantes na cultura digital e na lógica computacional ○ Planos de Aulas para professores 11 Iniciativas ● Pesquisadores, Grupos de Pesquisa e Universidades Laboratório de Inovação Tecnológica na Educação 12 PENSAMENTO COMPUTACIONAL Como e quando ensinar o Pensamento Computacional 13 PENSAMENTO COMPUTACIONAL Algoritmo e Lógica de Programação 1 Algoritmo ● Um algoritmo é um conjunto de INSTRUÇÕES e procedimentos LÓGICOS para a solução de um PROBLEMA ou execução de uma TAREFA ● A implementação do algoritmo pode ser feita por um computador, por outro tipo de autômato ou mesmo por um ser humano ● A formulação de um algoritmo passa pelo processo de decomposição, reconhecimento de padrões e abstração 2 Algoritmo ● As instruções podem ser escritas em formato de diagrama (fluxograma ou blocos), pseudocódigo (linguagem humana) ou em linguagem de programação (códigos) Início enquanto (Condição 1) faça realizar Ação 1 Fim Início Fim Ação 1 Condição 1 Falso VerdadeBegin While (x <> 0) do Var := random(10); End; 3 ● É um Tema ou Questão, em qualquer área do conhecimento, cuja solução ou resposta requer considerável pesquisa, estudo, reflexão e grande esforço para ser solucionado (MICHAELIS) ○ Faz parte do nosso cotidiano ● Buscar o procedimento para solucionar o problema Problema 4 ○ Pegar a escada ○ Posicionar a escada embaixo da lâmpada ○ Buscar uma lâmpada nova ○ Subir a escada ○ Retirar a lâmpada antiga ○ Colocar a lâmpada nova Problema - Trocar uma lâmpada 5 ● Acionar o interruptor ● Se a lâmpada não acender, então: ○ Buscar uma escada ○ Posicionar a escada embaixo da lâmpada ○ Subir na escada ○ Retirar a lâmpada queimada ○ Inserir a lâmpada nova ○ Enquanto a lâmpada não acender, faça: ■ Retirar a lâmpada queimada ■ Colocar uma lâmpada nova ○ Descer da escada; ○ Guardar a escada; Trocar uma lâmpada com teste 6 ● Ir para a escola ○ acordar cedo ○ ir ao banheiro ○ lavar o rosto ○ escovar os dentes ○ abrir o armário para escolher uma roupa ○ escolher uma roupa ○ vestir a roupa escolhida ○ tomar café ○ pegar uma condução ○ descer próximo à escola Problema 7 ● Um homem precisa atravessar um rio com um barco que possui capacidade de transportar apenas ele mesmo e mais uma de suas três cargas, que são: um lobo, um bode e uma caixa de alfafa ● Quais as ações necessárias para que o homem consiga atravessar o rio sem perder suas cargas. ○ O lobo não pode ficar sozinho com o bode, senão ele o come ○ O bode não pode ficar sozinho com a alfafa, senão a come Problema 8 ● Pontes de Königsberg - cruzar as sete pontes numa caminhada contínua sem passar duas vezes por qualquer uma delas Problema 9 ● Para resolver um problema é necessário raciocinar de maneira lógica ● A lógica é a arte do “bem pensar”, é a ciência que trata das formas do pensamento em termos de racionalidade e coerência ● A lógica trata da correção do pensamento - faz distinção entre raciocínios válidos e não válidos, determinando o processo que leva ao conhecimento verdadeiro Lógica 10 ● Partes Fundamentais ○ PROPOSIÇÃO: Afirma que algo é verdadeiro ou que algo é falso. As frases que afirmam alguma coisa ○ PREMISSAS: São as proposições (frases afirmativas) que se usa para provar alguma coisa, para defender uma ideia ○ CONCLUSÃO: É a proposição que é obrigatória, caso você tenha concordado com as premissas Lógica 11 ● Silogismo Todo mamífero é um animal. (Premissa) Todo cavalo é um mamífero. (Premissa) Portanto, todo cavalo é um animal. (Conclusão) O crocodilo é um animal. Podemos concluir que o crocodilo é um mamífero? Lógica 12 ● Silogismo Enzo é mais velho que Murilo (Premissa) Murilo é mais velho que Henrique (Premissa) Portanto, Enzo é mais velho que Henrique (Conclusão) Lógica 13 ● Técnica de encadear pensamentos para atingir determinado objetivo ● Permite definir a Sequência Lógica para a solução de um problema ● Sequência Lógica: ○ Passos executados até se atingir um objetivo ou solução de um problema ○ Pensamentos descritos como uma Sequência de INSTRUÇÕES que devem ser seguidas para cumprir uma determinada tarefa Lógica de Programação 14 ● Exemplo: ○ A gaveta está fechada ○ A caneta está dentro da gaveta ○ Precisamos primeiro abrir a gaveta para depois pegar a caneta ● Sequência ordenada de passos que deve ser seguida para a realização de uma determinada tarefa Lógica de Programação 15 ● Conjunto de regras ou normas definidas para a realização ou emprego de algo ● Em um programa indica uma ação elementar a ser executada ● É importante ressaltar que uma ordem isolada não permite realizar o processo completo, para isso é necessário um conjunto de instruções colocadas em ordem sequencial lógica. Instruções 16 ● Para a tarefa “fazer omelete” ○ Instruções: quebrar ovos; bater ovos; adicionar sal; acender fogo; colocar óleo na frigideira; levar a frigideira ao fogo; fritar ovos batidos; etc. ● Quanto às instruções isoladas ○ Só “quebrar ovos”, ou só “colocar óleo na frigideira”, não é suficiente para cumprir a tarefa “fazer omelete” ● Quanto à sequência lógica ○ Se “fritar ovos batidos” antes de “bater ovos”, ou pior, antes de “quebrar ovos”, a tarefa de “fazer omelete” não será efetivada Exemplo de Instruções 17 Linguagem de Programação ● O algoritmo deve ser “escrito” em uma linguagem de programação para que o computador saiba executá-lo ● É uma linguagem escrita e formal que especifica um conjunto de instruções e regras usadas para gerar programas (softwares) 18 Linguagem de Programação ● Exemplo de código fonte na Linguagem Python 19 Programas de Computador ● São sequências de instruções escritas em uma determinada linguagem de programação ● PROCESSO é a atividade de executar um programa e, consequentemente, também é a atividade de executar um algoritmo ● Um software pode ser desenvolvido para ser e executado em um computador, dispositivo móvel ou em qualquer equipamento que permita sua execução 20 Representação dos Algoritmos ● As formas de representação de algoritmos mais conhecidas: ○ Descrição Narrativa ○ Pseudocódigo ○ Fluxograma ou Diagrama de Blocos 21 PENSAMENTO COMPUTACIONAL Algoritmo e Lógica de Programação 22 PENSAMENTO COMPUTACIONAL Representação dos Algoritmos Representação dos Algoritmos ● As formas de representação de algoritmos mais conhecidas: ○ Descrição Narrativa ○ Pseudocódigo ○ Fluxograma ou Diagrama de Blocos Descrição Narrativa ● Os algoritmos são expressos na linguagem que usamos naturalmente para se comunicar – linguagem natural ● Desvantagem: pode causar ambiguidade e imprecisões Exemplo: Livro de receitas Descrição Narrativa ● Exemplo: Trocar uma lâmpada Pegar a escada Posicionar a escada embaixo da lâmpada Buscar uma lâmpada nova Subir a escada Retirar a lâmpada antiga Colocar a lâmpada nova Descrição Narrativa Obter as notas de provas Calcular a média aritmética Se a média for maior que 7, O aluno foi aprovado Senão aluno foi reprovado ● Exemplo: Calcular média das provas Descrição Narrativa ● Atividade1: Elaborar uma descrição narrativa para trocar o pneu furado do carro Descrição Narrativa ● Atividade 2: Elaborar uma descrição narrativa para sacar dinheiro num banco 24 horas Pseudocódigo ● Não é uma Linguagem de Programação, é uma maneira simples de descrever um conjunto de instruções que não precisa usar sintaxe específica ● Semelhante a escrever em uma linguagem de programação ● Conhecido também como Português Estruturado ou Portugol ● Normalmente, as instruções são escritas em maiúsculas, as variáveis em minúsculas e as mensagens em maiúsculas Pseudocódigo ● Vantagens: ○ Usa o português como base ○ Pode-se definir quais e como os dados vão estar estruturados ○ Passagem quase imediata do algoritmo para uma linguagem de programação ● Desvantagem: ○ Exige a definição de uma linguagem não real para trabalho; ○ Não padronizado. Pseudocódigo ● Regras para escrita do pseudocódigo 1. Usar somente um verbo por frase e no imperativo 2. Usar sentenças fáceis de serem entendidas por pessoas leigas no assunto 3. Usar frases simples e curtas 4. Ser direto e objetivo 5. Usar palavras que não tenham sentido duplo. Pseudocódigo - Sintaxe Programa <nome_do_algoritmo>; <declaração_de_variáveis>; Início <corpo do algoritmo> Fim <nome_do_algoritmo> : É um nome simbólico dado ao algoritmo com a finalidade de distingui-lo dos demais <declaração_de_variávei> : Consiste no campo de declaração das variáveis utilizadas no algoritmo Início e Fim : Palavras que delimitam o começo e o término do conjunto de instruções do corpo do algoritmo Pseudocódigo - Calcular Média Programa Calcular_Media Início ESCREVA "Digite a nota1:" LEIA nota1 ESCREVA "Digite a nota2:" LEIA nota2 media = (nota1 + nota2)/2 ESCREVA "Sua média foi:" ESCREVA media SE media >= 7 ENTÃO ESCREVA "APROVADO" Senão ESCREVA "REPROVADO" Fim Pseudocódigo - Lâmpada Programa Teste_Lampada Var Lampada, Interruptor, Soquete: Booleano Início Leia Lampada, Interruptor, Soquete Escreva “Aperte o interruptor” Se Lampada=1 Então Escreva “Funcionamento normal” Senão Se Lampada=0 Então Escreva “Troquei a lâmpada Senão Se Soquete = 0 Então Escreva “Troque o soquete” Senão Se Interruptor = 0 Então Escreva “Troque o interruptor” Senão Escreva “Troque o interruptor” Fim Pseudocódigo - Passagem ônibus Programa Passagem_Onibus Var idade : inteiro preco : real Início leia idade leia preco Se idade < 65 então imprima 'Preço é ', preco senão imprima 'Passagem Grátis' fimse Fim Pseudocódigo ● Atividade 1: Elaborar o pseudocódigo para trocar o pneu furado do carro Pseudocódigo ● Atividade 2: Elaborar o pseudocódigo para sacar dinheiro num banco 24 horas ● É um diagrama que representa um conjunto de instruções ● É uma representação gráfica onde os símbolos (formas geométricas) representam as diferentes ações (instruções, comandos) ● Facilita o entendimento dos algoritmos e a visualização dos passos ● Podem ser divididos em várias etapas para fornecer mais detalhes sobre exatamente o que está acontecendo ● Podem ser simplificados para que várias etapas ocorram em apenas uma etapa Fluxograma ou Diagrama de Blocos ● Possui Sintaxe e Semântica bem definidas ○ Sintaxe: Corresponde ao emprego correto de seus elementos ○ Semântica: Corresponde ao significado dos símbolos utilizados ● Apenas uma linha de fluxo deve partir ou chegar a um terminador ou conector ● Cada ação (passo) deve ser descrita de forma clara, sem ambiguidade Fluxograma ou Diagrama de Blocos Fluxograma Simbologia ProcessamentoInício / Fim Decisão Verdadeiro Falso Entrada de Dados Saída de DadosFluxo Conector ● O fluxograma permite três ordens distintas de execução: ○ Sequencial: as atividades são executadas uma após a outra ○ Por seleção: Ocorre quando uma via de processamento é escolhida em um ponto de bifurcação, de forma que cada via conduz a um processamento distinto ○ Por repetição: Faz com que a execução ocorra em ciclos de processamento até atingirem uma condição de finalização Ordem de Execução do Fluxo ● Não há alteração na ordem de processamento das ações Execução Sequencial Início Passo 1 Passo 2 Passo N Fim ● O passo (ação) somente será processado caso a expressão lógica avaliada for verdadeira Execução Por Seleção Início Fim ● A sequência de ações será executada repetidamente enquanto o resultado lógica de uma expressão for verdadeiro Execução Por Repetição Fim Ação 1 Condição 1 Falso Verdade Início Loop Fim Ação 1 Condição 1 Falso Verdade Início Loop Teste à Cabeça Teste à Cauda Execução Por Repetição Teste à Cabeça Teste à Cauda Fluxograma ● Atividade 1: Elaborar o fluxograma para trocar o pneu furado do carro Fluxograma ● Atividade 2: Elaborar o fluxograma para sacar dinheiro num banco 24 horas Diagrama de Chapin ● Também conhecido como Diagrama de Nassi-Shneiderman, permite uma visão hierárquica e estruturada da lógica do programa Diagrama de Blocos Fases do Algortimo ● ENTRADA: São os dados de entrada do algoritmo. Identificados por verbos: Ler, Receber,etc. ● PROCESSAMENTO: São os procedimentos necessários para atingir ao resultado final ● SAÍDA: São os dados já processados. Identificados por verbos: Retornar, Imprimir, Mostrar, etc. Fases do Algoritmo ● Problema: Calcular a média de dois números ● Dados de Entrada: os números N1 e N2 ● Processamento: somar os dois números e dividir a soma por 2 média = (N1 + N2) / 2 ● Saída: a média PENSAMENTO COMPUTACIONAL Representação dos Algoritmos PENSAMENTO COMPUTACIONAL SCRATCH 1 Introdução Programa de Computador é um conjunto de instruções que dizem o que um computador deve fazer Instruções são escritas por meio de uma linguagem de programação Linguagens de programação têm regras de sintaxe e podem ser um desafio para iniciantes Scratch é um ambiente de programação visual baseado em blocos gráficos, desenvolvido pelo MIT No Scratch não é necessário digitar nenhum comando complicado - tornando o aprendizado de programação mais fácil e divertido 2 Introdução Objetivos: Criação de projetos interativos: jogos, histórias, projetos de ciência, simulações, músicas e artes, etc. • Criação de Objetos de Aprendizagem Permite exercitar a criatividade e o raciocínio lógico e matemático - desenvolvimento das habilidades relacionadas à resolução de problemas (Pensamento Computacional) • Comunidade Scratch (Compartilhar os projetos de forma simples e intuitiva http://scratched.gse.harvard.edu/ 3 Exemplo: Lobo, bode e repolho https://scratch.mit.edu/projects/368018044 Um homem precisa atravessar um rio com um barco que possui capacidade de transportar apenas ele mesmo e mais uma de suas três cargas, que são: um lobo, uma ovelha e uma caixa de repolho. 4 Exemplo: Jogo Pong https://scratch.mit.edu/projects/363060474 5 Motivação - Computação ● Ensino de Lógica de Programação ○ Dificuldade no desenvolvimento do raciocínio lógico e na capacidade de abstração no processo de resolução de problema ● Diversas pesquisas têm apontado fatores favoráveis à inserção do Scratch como método de apoio ao ensino de programação ○ Na introdução dos conceitos, em conjunto com linguagens de programação tradicionais, pode aumentar a motivação do aluno e, consequentemente, favorecer seu aprendizado. 6 Motivação - Licenciaturas ● Quando ensinada de forma contextualizada, pode ser uma grande aliada para o processo de ensino e aprendizagem ● Produção de recursos didáticos - professor desenvolve e aplica esses recursos ou alunos produzem seus conteúdos ● Programação está presente nas escolas de diversas formas e em várias disciplinas ● A intenção é contribuir para a inovação nas práticas pedagógicas dos futuros professores 7 Motivação - Licenciaturas ● Matemática:Construção de objetos de aprendizagem - formas algébricas, noções geométricas, plano cartesiano, etc. ● Língua portuguesa: programação como suporte na alfabetização ou produção de textos - nova forma de abordagem - aproxima o envolvimento do aluno com o conhecimento e sua interação com o objeto de estudo 8 Habilidades do conhecimento ● Com o Scratch é possível atingir nove habilidades de aprendizagem para o século XXI: 1. habilidade de tratar informações e trabalhar com mídias 2. habilidades de Comunicação 3. habilidade de pensar criticamente e sistematicamente 4. habilidade de identificar, formular e solucionar problemas 5. habilidade de ser criativo e ter habilidade intelectual 6. habilidade de autodirecionar 7. habilidades interpessoais e colaborativas 8. habilidade de ser responsável e adaptável 9. habilidade de ser responsável socialmente 9 Instalação ou Versão online • Acesse online: https://scratch.mit.edu/ • Realizar o cadastro para salvar seus projetos e visualizar os projetos compartilhados. • Está disponível para download em https://scratch.mit.edu/download • Disponível em vários idiomas 10 Ambiente de Programação do Scratch https://scratch.mit.edu/ Área de comando Scripts Área (Área de Scripts - código) Stage (Palco) Sprite List (Lista de Atores) 11 Palco (Stage) 12 Palco (Stage) • Apresenta o resultado da execução do programa (simulador) • Local em que os Atores (Sprites) se movimentam e interagem • É possível acrescentar cenários (Panos de Fundo) ao palco • Possui 480 passos de largura (X) e 360 passos de altura (Y) - centro - coordenada 0,0 13 Palco - Cenários 14 Aba Cenários (Backdrops) • Criar e editar cenários com o Paint Editor • Organiza as imagens de fundo do palco 15 Atores (Sprites) 16 Atores (Sprites) • Cada projeto pode ter um ou mais atores (Lista de Atores) • Cada ator do projeto tem seus próprios códigos (scripts) e fantasias 17 Aba Fantasias (Costumes) • Criar e editar fantasias com o Paint Editor • Organiza as fantasias de um ator - guarda-roupa 18 Aba Blocos ou Código 19 Aba Blocos ou Código • Os Blocos são os elementos para construção dos programas • São usados para organizar os comandos a serem executados • Estão divididos em 10 categorias de comandos mais utilizados (diferenciados pela cor) • Associados ao ator ou palco que está selecionado 20 Área de Scripts - Programação 21 Área de Scripts - Programação • Local onde os blocos de comandos são arrastados para a construção dos projetos - ordem de execução - sequência - associados ao ator ou palco que está selecionado • É possível testar os blocos à medida em que são criados 22 Aba Sons 23 Aba Sons • Palcos e atores podem reproduzir sons • Inserção, edição ou gravação de áudio vinculado ao ator ou palco selecionado 24 Mochila (Backpack) 25 Mochila (Backpack) • Permite compartilhar o projeto e usar atores e códigos de outros projetos existentes • Disponível somente para usuários logados • O conteúdo da mochila é salvo no servidor do Scratch 26 Inicialização e movimentos Bandeira verde: inicializa a execução do programa Botão vermelho: encerra o programa 27 Atividade 1 - Iniciando ●Na área de Blocos, selecione “Eventos”, arraste o bloco “quando clicar em ” para a área de programação ●Selecione o comando indicado na figura da sessão “Aparência” e também arraste ●Na sessão “Movimento”, selecione o comando. indicado ●Faça o mesmo na sessão “Som” ●Para testar, clique em https://scratch.mit.edu/projects/368054685/ 28 Atividade 2 - Atores conversando https://scratch.mit.edu/projects/368012560 Insira dois atores a sua escolha e crie um diálogo entre eles. Eles não devem falar ao mesmo tempo, um deve esperar a fala do outro para então responder 29 Atividade 2 - Atores conversando https://scratch.mit.edu/projects/368012560 30 PENSAMENTO COMPUTACIONAL SCRATCH 31 PENSAMENTO COMPUTACIONAL Scratch – Parte 2 1 Categoria de blocos de comandos ● Organizadas pela cor e pelos tipos de ações e funcionalidades ● Existem 10 categorias de comandos mais utilizados 2 Tipos de blocos ● A maioria dos blocos exigem uma ou mais entradas (também chamadas de argumentos): texto editável, menu suspenso, ou área de encaixe de outro bloco ● Blocos de comando: podem ser unidos na forma de pilha ● Blocos de função: são utilizados como entradas para outros blocos 3 Tipos de blocos ● Blocos de trigger: executam blocos que estão abaixo deles ● Blocos de controle: armazenam outros blocos 4 Categoria Movimentos ●Proporcionam dinâmica aos atores: deslocamentos, giros e deslizamentos de acordo com a posição e direção do ator. 5 Categoria Movimentos 6 Categoria Aparência ●Permite alterar a aparência do Ator ou Palco ●Possibilita a comunicação do ator (diga e pense) https://scratch.mit.edu/projects/368012560 7 Fantasias 8 Categoria Som • Permite tocar, mudar volume ou efeito, remover efeitos ou parar o áudio 9 Categoria Eventos • A ocorrência de um evento pode estar condicionada à outra ação ou evento 10 Categoria Sensores • Utilizado para identificar toques, cores, distâncias e normalmente são combinados com outros comandos 11 Controle de colisão ●Definir ações quando ocorrer colisões entre os atores 12 Pong 13 Algoritmo Calcular Média Programa Calcular_Media Var nota1, nota2, media Início ESCREVA "Digite a nota 1:" LEIA nota1 ESCREVA "Digite a nota 2:" LEIA nota2 media = (nota1 + nota2)/2 ESCREVA "Sua média foi:" ESCREVA media SE media >= 7 ENTÃO ESCREVA "APROVADO" Senão ESCREVA "REPROVADO" Fim Digite a nota 1: 7 Digite a nota 2: 7 Sua média foi: 7 Aprovado 14 Categoria Variáveis ● Variável é a estrutura para armazenar algum valor na memória do computador ● Tipos de dados no Scratch • Numérico: inteiros e reais • Textual: strings • Lógico: booleanos ● Escopo das variáveis 15 Categoria Variáveis ●Comandos ●Visualização e entrada de dados 16 Alterando Variáveis ●Atribuir um novo valor (set to) ●Adiciona uma quantidade específica ao valor atual (change) 17 Entrada de dados ●Permite ler dados digitados pelo usuário (ask and wait) ●Armazena os dados no bloco resposta (answer) 18 Categoria Operadores ●Permite operações aritméticas, expressões lógicas e funções trigonométricas, logarítmicas e exponenciais 19 Operadores Aritméticos ●Conjunto de símbolos que representa as operações básicas da matemática ●Podem ser usados com variáveis ou com valores fixos 20 Expressões Lógicas ●São expressões que resultam em valores lógicos: verdadeiro ou falso ●São compostas por operadores relacionais, operadores lógicos, e por identificadores variáveis ou constantes do tipo lógico ●As expressões lógicas também podem ser compostas por resultados de expressões aritméticas 21 Operadores Relacionais ●São utilizados para realizar comparação entre dois valores do mesmo tipo (variáveis ou expressões) ●Resulta em um valor lógico (verdadeiro ou falso) ●Podem ser utilizados com variáveis ou com valores fixos 22 Retorna verdadeiro se ambos operandos forem verdadeiros, senão retorna falso Retorna verdadeiro se um dos operandos for verdadeiro, senão retorna falso Inverte o valor de uma variável ou expressão, de verdadeiro para falso e vice-versa Operadores Lógicos ●Utilizados para unir expressões lógicas ●Combina resultados e testes de expressões ●Retorna um valor verdadeiro ou falso 23 Tabela Verdade ●Resultado das combinações de entradas X Y X e Y X ou Y verdadeiro verdadeiro verdadeiro verdadeiro verdadeiro falso falso verdadeiro falso verdadeiro falso verdadeiro falso falso falso falso 24 Categoria Controle Possui comandos pré-definidos, responsáveis pela estrutura lógica de conexão entre outros comandos 25 Estruturas de Seleção (Decisão) ●Utilizada para representar o desvio no fluxonormal de comandos ●Permite a execução de um bloco de comandos, quando expressões lógicas são satisfeitas F V 26 Verificando intervalos numéricos ●Condição: X >= 10 ● Implementação: 7 8 9 10 11 12 13 14 27 Verificando intervalos numéricos ●Condição: 8 <= X < 12 ● Implementação: 7 8 9 10 11 12 13 14 28 Estruturas de Repetição ●É uma estrutura utilizada quando um determinado conjunto de ações deve ser executado várias vezes 29 Atividade 3 - Calcular média na disciplina ● Sua professora de português quer calcular a sua média na disciplina, você precisa informar para ela: o seu nome, a sua nota da prova 1 e a nota da prova 2 ● A professora deverá somar as duas e dividir essa soma por 2 para chegar ao resultado https://scratch.mit.edu/projects/372250363 30 Atividade 4 - Calcular a idade ● Após informar o ano corrente e o ano em que nasceu, o programa deverá identificar se a pessoa é maior ou menor de idade https://scratch.mit.edu/projects/372247998 31 PENSAMENTO COMPUTACIONAL Scratch – Parte 2 32 PENSAMENTO COMPUTACIONAL Scratch – Parte 3 1 Manipulando Strings ●String é uma sequência ordenada de caracteres tratada como uma unidade ●Acesso individual aos caracteres da String ● Informe o tamanho da String 2 Atividade 5 - Quantidade de vogais na frase https://scratch.mit.edu/projects/372744094 3 Extensão Caneta ●Todo ator tem uma caneta invisível ●Caneta pode ser utilizada para desenhar formas geométricas (triângulo, quadrado, retângulo, etc) 4 Extensão Caneta 5 Procedimentos ●Decomposição: processo que divide os problemas em partes menores para facilitar a resolução, desenvolvimento e gerenciamento ●Procedimentos: o programa é dividido em partes menores, responsáveis por executar determinadas tarefas cujo comportamento pode ou não variar de acordo com parâmetros de entrada ●Trechos de códigos repetidos para a execução de uma instrução ou conjunto de instruções n vezes seguidas 6 Atividade 6 - Procedimentos ●Blocos Caneta https://scratch.mit.edu/projects/375153792 7 Variáveis do tipo Listas ●Listas são coleções de variáveis do mesmo tipo agrupadas e acessadas por um único nome, ou melhor, um único identificador ●Uma lista é como um contêiner em que pode armazenar e acessar vários valores ●Os itens são referenciados por meio de sua posição (índice) 8 Criando Listas 9 Adicionando dados na Lista 10 Acessando itens da Lista ●Primeiro item tem o índice igual a 1 11 Atividade 7- Busca linear ●A Busca Linear (ou Busca Sequencial) realiza pesquisa em listas (ordenada ou não) ● O método compara o valor-alvo (X) com cada elemento da lista - dependendo da quantidade de elemento na lista pode consumir muito tempo ● Não é eficiente para listas ordenadas lista[i] == X 12 Atividade 7- Busca linear ● Procedimento Busca Linear, executado ao clicar no Ator (Botão Inserir) https://scratch.mit.edu/projects/375123019 13 Broadcast de mensagens ●Pode ser utilizado para coordenação de Atores. ●Trechos de scripts podem ser executados após receber uma mensagem de broadcast ●Atores podem enviar e receber broadcast 14 Atividade 8 - Broadcast de mensagens Ator 2 Ator 3Ator 1 https://scratch.mit.edu/projects/363223951 15 Exemplos livro Majed Marji 16 Mão na massa!!! Explore sua criatividade, desenvolva o seguinte script: Insira dois atores a sua escolha e crie um diálogo entre eles. Lembre-se que eles não devem falar ao mesmo tempo, um deve esperar a fala do outro para então responder Durante o diálogo, os atores poderão se movimentar e trocar suas fantasias aleatoriamente. Posteriormente, insira mais personagens na sua história e faça com que todos eles conversem Agora, adicione sons aos seus personagens. Você poderá ver os áudios disponíveis no Scratch na aba "Sons". 17 Mão na Massa!! ● Palíndromo é uma palavra ou frase que tenha a propriedade de poder ser lida tanto da direita para a esquerda como da esquerda para a direita. ● Crie uma script para verificar se uma frase ou palavra é Palíndromo ●Exemplos: • A grama é amarga • Socorram-me, subi no ônibus em Marrocos • Arara • Missa é assim • 02/02/2020 18 Mão na Massa!! ● Crie um script que, dado um número de 1 a 12 diga o mês correspondente a esse número. Por exemplo, se o usuário digitar 2, o programa deve responder "O mês 2 é Fevereiro". Se o usuário digitar um número fora do intervalo de 1 a 12 o programa deve dizer que o número é inválido. 19 PENSAMENTO COMPUTACIONAL Scratch – Parte 3 20 PENSAMENTO COMPUTACIONAL SCRATCH https://scratch.mit.edu/ 1 Atividade 2 - Atores conversando https://scratch.mit.edu/projects/368012560 Insira dois atores a sua escolha e crie um diálogo entre eles. Eles não devem falar ao mesmo tempo, um deve esperar a fala do outro para então responder 2 Atividade 3 - Calcular média na disciplina ● Sua professora de português quer calcular a sua média na disciplina, você precisa informar para ela: o seu nome, a sua nota da prova 1 e a nota da prova 2 ● A professora deverá somar as duas e dividir essa soma por 2 para chegar ao resultado https://scratch.mit.edu/projects/372250363 3 Atividade 7- Busca linear ● Procedimento Busca Linear, executado ao clicar no Ator (Botão Inserir) 4https://scratch.mit.edu/projects/377157478/ PENSAMENTO COMPUTACIONAL SCRATCH https://scratch.mit.edu/ 5 PENSAMENTO COMPUTACIONAL SCRATCH https://scratch.mit.edu/ 1 Atividade 2 - Atores conversando https://scratch.mit.edu/projects/368012560 Insira dois atores a sua escolha e crie um diálogo entre eles. Eles não devem falar ao mesmo tempo, um deve esperar a fala do outro para então responder 2 Atividade 3 - Calcular média na disciplina ● Sua professora de português quer calcular a sua média na disciplina, você precisa informar para ela: o seu nome, a sua nota da prova 1 e a nota da prova 2 ● A professora deverá somar as duas e dividir essa soma por 2 para chegar ao resultado https://scratch.mit.edu/projects/372250363 3 Atividade 7- Busca linear ● Procedimento Busca Linear, executado ao clicar no Ator (Botão Inserir) 4https://scratch.mit.edu/projects/377157478/ PENSAMENTO COMPUTACIONAL SCRATCH https://scratch.mit.edu/ 5 PENSAMENTO COMPUTACIONAL MIT – App Inventor 1 O que são aplicativos - APP ● Programas desenvolvidos para dispositivos móveis (smartphones, tablets, relógios, etc.) ● Grande variedade de aplicativos e linguagens para desenvolvimento - disponíveis em plataformas de distribuição (APP Store ou Google Play Store) 2 Aplicativos nativos • Vantagens: • Recursos de hardware (GPS, câmera fotográfica, sensores, bluetooth, etc) • Acesso off-line: uso sem acesso a internet • Menor custo de acesso: como a interface é adaptada para o dispositivo, o tráfego de dados para navegação é menor • Envio de notificações informativas em tempo real • Desvantagens: • Custo e tempo para desenvolvimento • Atualização de novas versões no dispositivos 3 Site responsivo e Web app ● Design responsivo: os elementos são automaticamente reorganizados e redimensionados de acordo com o tamanho da tela do dispositivo que o acessa ● Web app: o site é otimizado especificamente para dispositivos móveis ● interfaces mais adequadas e parecidas com aplicativo nativo ● custo de implementação inferior ● São multiplataformas - navegador com internet ● Não é possível utilizar os recursos do dispositivo 4 APP Inventor ● O MIT App Inventor é um ambiente de programação visual intuitivo que permite criar aplicativos funcionais para dispositivos móveis ● Originalmente criado pelo Google Labs, atualmente mantido pelo MIT ● Utiliza a programação baseada em blocos ● É uma ferramenta de drag-and-drop (arrastar e soltar) visual para a construção de aplicações móveis na plataforma Android ● Não substitui aslinguagens de programação 5 Motivação ● Ferramenta de ensino e aprendizagem - pode ser utilizada nas aulas de qualquer disciplina e em qualquer momento - promove a exploração e descoberta ● Educadores desenvolvem seus próprios objetos instrucionais ● Entusiastas e empreendedores: transformar uma ideia em um aplicativo sem a curva de custo ou de aprendizagem 6 Motivação ● Não está limitada a jogos simples ○ Educação: coleta e análise de dados (questionários) ○ Localização: carro, amigos, hospitais, rastreamento, tour ○ Robôs: controlar o robô via Bluetooth ○ Aplicações complexas: para escanear códigos de barra, falar, ouvir (reconhecer palavras), ouvir música, fazer música, reproduzir vídeo, detectar a orientação do telefone e de aceleração, tirar fotos, e fazer chamadas telefônicas ○ Aplicativos personalizados: resposta a desastres naturais e necessidades comunitárias 7 Ciclo de desenvolvimento do APP Fonte: www.computacaonaescola.com.br 8 Acessando o App Inventor 2 • Página principal: http://appinventor.mit.edu/ • Acesso direto: http://ai2.appinventor.mit.edu/ • Acesso conta Google • Disponível em vários idiomas 9 App Inventor 2: Visão de Designer Paleta de Componentes Botão de Designer Componentes Área de Visualização 10 Paleta de Componentes 11 Editor de Blocos ● Contém a lógica das funcionalidades do APP Botão de Blocos 12 Criando App ● Clique no botão “Iniciar novo projeto” ou vá em “Projetos” > “Iniciar novo projeto...” 13 APP: Calculadora de IMC ● Fórmula IMC = (peso / (altura * altura)) IMC CLASSIFICAÇÃO GRAU Menor que 18,5 Magreza 0 Entre 18,5 e 24,9 Normal 0 Entre 25 e 29,9 Sobrepeso I Entre 30 e 39,9 Obesidade II Maior que 40 Obesidade Grave III 14 Calculadora de IMC - Algoritmo Início Usuário digita o peso Usuário digita a altura Usuário clica no botão Calcular IMC Realizar o cálculo do IMC ( (peso / (altura * altura)) Imprimir o valor do IMC calculado Se (IMC menor que 18,5) Então Imprimir a mensagem "Classificação: Magreza" Senão Se (IMC maior ou igual a 18,5 e IMC menor que 24,9) Então Imprimir a mensagem "Classificação: Normal" Senão Se (IMC maior ou igual a 25 e IMC menor que 29,9) Imprimir a mensagem "Classificação: Sobrepeso" Senão Se (IMC maior ou igual a 30 e IMC menor que 39,9) Imprimir a mensagem "Classificação: Obesidade" Senão Imprimir a mensagem "Classificação: Obesidade Grave" Fim 15 Calculadora de IMC ● Aplicativo “Calculadora de IMC” 16 Definindo a Interface - visual Peso Altura Botão Calcular Resultado Mensagem Classificação 17 Propriedade da tela 18 Propriedade dos componentes 19 Propriedade dos componentes 20 Lógica de programação - blocos Operações de controle, lógicas, matemáticas, variáveis e procedimentos. 21 Variável ● Variável é um local da memória do computador usado para armazenar um valor 22 Obtendo valores dos componentes 23 Alterando valores dos componentes 24 Lógica de Programação - Eventos ● O comportamento do aplicativo é definido por um conjunto de manipuladores de evento, realizado pelo usuário ou dispositivo ● Ações são executadas quando ocorre um evento 25 Lógica do APP Calculadora de IMC 26 Opções para testar sua aplicação 1. Baixar o App Inventor Companion App para o seu dispositivo. • Conexão wireless 2. Instalar um emulador https://appinventor.mit.edu/explore/ai2/setup-emulator.html 1. Instalar um software que permita a conexão via USB com seu dispositivo 27 Execução no Emulador ● Execute o emulador aiStarter 28 Execução no celular Selecione: • Conectar > Assistente AI • Pegue seu smartphone ou tablet e abra o app “MIT AI2 Companion” para ler o QR Code que é mostrado, usando a opção “Scan QR Code” 29 PENSAMENTO COMPUTACIONAL MIT – App Inventor 30 PENSAMENTO COMPUTACIONAL MIT – App Inventor – Parte 2 1 Projeto/Desafio: APP Descarte Solidário 2 Mão na massa!!! 3 APP Descarte Solidário - Algoritmo Início Selecionar o tipo do descarte (1- Móveis, 2 - Eletrodomésticos, 3 - Roupas, 4 - Eletrônicos, 5 - Recicláveis e 6 - Lixo Eletrônico) Informar a descrição detalhada do material a ser descartado Selecionar o estado de conservação Informar a data e horário Informar o endereço Ao clicar no botão de busca, pesquisar o endereço e exibir no mapa a localização Inserir uma foto do descarte, podendo ser uma foto já existente na galeria ou bater direta da câmera Exibir a foto na tela Clicar no botão Salvar para armazenar as informações no banco de dados fim 4 APP Descarte Solidário 5 Criando App ● Clique no botão “Iniciar novo projeto” ou vá em “Projetos” > “Iniciar novo projeto...” 6 Definindo a Interface - Tela entrada ● Adicione na tela os componentes 7 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere as propriedades: Largura para "Preencher principal", Texto para "Tipo de Descarte" 8 Definindo a Interface - Tela cadastro ● Adicione na tela uma Lista Suspensa, e altere as propriedades: Largura para "Preencher principal" e Cadeia de Elementos 9 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere as propriedades: Largura para "Preencher principal", Texto para "Descrição" 10 Definindo a Interface - Tela cadastro ● Adicione na tela uma Caixa de Texto, e altere as propriedades: Largura para "Preencher principal", Dica para "Detalhes do Descarte" 11 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere as propriedades: Largura para "Preencher principal", Texto para "Estado de Conservação" 12 Definindo a Interface - Tela cadastro ● Adicione na tela uma Lista Suspensa, e altere as propriedades: Largura para "Preencher principal" e Cadeia de Elementos 13 Definindo a Interface - Tela cadastro ● Adicione na tela a Organização Horizontal (permite inserir e organizar componentes) 14 Definindo a Interface - Tela cadastro ● Adicione na tela EscolheData, e altere a propriedade Texto para "Data" 15 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere a propriedade Alinhamento do Texto para "Esquerda: 0" - A legenda receberá a data selecionada para visualização 16 Definindo a Interface - Tela cadastro ● Adicione na tela EscolheHora, e altere a propriedade Texto para "Hora" 17 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere a propriedade Alinhamento do Texto para "Esquerda: 0" - A legenda receberá a hora selecionada para visualização 18 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere a propriedade Alinhamento do Texto para "Esquerda: 0" - A legenda receberá a resposta selecionada para visualização 19 Definindo a Interface - Tela cadastro ● Adicione na tela a Organização Horizontal (permite inserir componentes) 20 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda, e altere a propriedade Alinhamento do Texto para "Esquerda: 0" 21 Definindo a Interface - Tela cadastro ● Adicione na tela uma Caixa de Texto, e altere a propriedade Dica para "Dica para a Caixa de Texto 1" 22 Definindo a Interface - Tela cadastro ● Adicione na tela um Botão para buscar o endereço 23 Definindo a Interface - Tela cadastro ● Adicione na tela um Map para inserir o Mapa para localizar o endereço 24 Definindo a Interface - Tela cadastro ● Adicione na tela um Maker para indicar no Mapa a localização 25 Definindo a Interface - Tela cadastro ● Adicione na tela a Organização Horizontal (permite inserir componentes) 26 Definindo a Interface - Tela cadastro ● Adicione na tela uma Legenda para inserir a foto do item 27 Definindo a Interface - Tela cadastro ● Adicione na tela Escolhe Imagem para escolher foto da galeria de fotos 28 Definindo a Interface - Tela cadastro ● Adicione na tela um Botão para tirar foto 29 Definindoa Interface - Tela cadastro ● Adicione na tela uma Legenda somente para dar um espaço entre os componentes - visual 30 Definindo a Interface - Tela cadastro ● Adicione na tela uma Imagem para representar o aplicativo 31 Definindo a Interface - Tela cadastro ● Adicione na tela a Organização Horizontal (permite inserir componentes) 32 Definindo a Interface - Tela cadastro ● Adicione na um Botão para Salvar 33 Definindo a Interface - Tela cadastro ● Adicione na tela um Botão para Listagem dos itens 34 Definindo a Interface - Tela cadastro ● Adicione na tela o componente Câmera ● Componente não visível que tira uma foto usando a câmera do dispositivo - depois que a foto é tirada, o caminho para o arquivo no telefone que contém a foto fica disponível como argumento para o AfterPicture evento 35 Definindo a Interface - Tela cadastro ● Adicione na tela o componente Sensor de Localização ● Componente Não-visível - informação de localização, incluindo Latitude, Longitude, Altitude (se suportada pelo dispositivo), velocidade (se suportada pelo dispositivo), e o endereço 36 Definindo a Interface - Tela cadastro ● Adicione na tela o componente Temporizador ● Componente Não-visível que fornece o instante no tempo usando o relógio interno do telefone ● Pode disparar um timer em intervalos regulares e executar cálculos de tempo, manipulações e conversões 37 Definindo a Interface - Tela cadastro ● Adicione na tela o componente TinyDB ● Componente não visível que armazena dados persistente para um aplicativo ● Os itens de dados consistem em tags e valores. ● Irá armazenar os dados de cada descarte 38 Definindo a Interface - Tela cadastro ● Adicione na tela o componente Notificador ● O componente Notificador exibe mensagens de alerta e cria entradas de log do Android por meio de uma variedade de métodos 39 Definindo a Interface - Tela cadastro ● Adicione na tela o componente TinyDB (db_contador) ● Mantém na base de dados um contador de marcas (simular gerador de chaves primárias para cada descarte) 40 Criando App - Blocos ● Entrada: Controle, Texto, Procedimentos 41 Criando App - Blocos ● CadastroEvidencias: Variáveis, Matemática, Texto 42 Criando App - Blocos ● CadastroEvidencias: Controle, Procedimentos, Variáveis e Matemática 43 Criando App - Blocos ● CadastroEvidencias: ativando sensor de localização 44 ● Procedimentos: o programa é dividido em partes menores, responsáveis por executar determinadas tarefas, cujo comportamento pode ou não variar de acordo parâmetros de entrada ● Trechos de códigos repetidos para execução de uma instrução ou conjunto n vezes seguidas Procedimentos 45 Criando App - Blocos ● CadastroEvidencias: ativando sensor de localização (continuação) 46 Criando App - Blocos ● CadastroEvidencias: ativando Galeria de fotos 47 Criando App - Blocos ● CadastroEvidencias: Camera ● O argumento de texto imagem é o caminho que pode ser usado para localizar a imagem no telefone ● Ao clicar no botão a câmera é ativada para tirar foto 48 Criando App - Blocos ● CadastroEvidencias: ativando Mapa 49 Criando App - Blocos ● CadastroEvidencias: ajustar legendas Data e Hora 50 Criando App - Blocos ● CadastroEvidencias: tipo de descarte 51 Criando App - Blocos ● CadastroEvidencias: ativando Salvar 52 Criando App - Blocos ● CadastroEvidencias: ativando Salvar (continuação) 53 Criando App - Blocos ● CadastroEvidencias 54 Opções para testar sua aplicação 1. Baixar o App Inventor Companion App para o seu dispositivo. • Conexão wireless 2. Instalar um emulador https://appinventor.mit.edu/explore/ai2/setup-emulator.html 1. Instalar um software que permita a conexão via USB com seu dispositivo 55 Execução no Emulador ● Execute o emulador aiStarter 56 PENSAMENTO COMPUTACIONAL MIT – App Inventor – Parte 2 57 PENSAMENTO COMPUTACIONAL App Calculadora IMC Lógica do APP Calculadora de IMC 2 PENSAMENTO COMPUTACIONAL Letramento Digital 1 Roteiro 1. Conceitos básicos 2. Computadores 3. Dados e Informação 4. Sistema Computacional 5. Hardware 6. Software 7. Sistemas Operacionais 8. Programas da Aplicação 9. Processamento de Dados 10. Representação de Dados 11. Armazenamento de Dados 12. Redes de Computadores e a Internet 13. Largura de Banda 14. Hipertexto 15. Portais na web, Blog, Wiki, Domínio 16. Protocolo HTTP e HTTPS 17. Buscas na Web 18. Correio Eletrônico 19. Computação em Nuvem 20. Armazenamento em Nuvem 21. Organização de arquivos em Pastas 22. Editores de Documentos, Apresentações e Planilhas 23. Compartilhamento de Documentos 24. Formulários Online 25. Gravação e Edição de Vídeos 26. Comunicação na Internet 27. Redes Sociais 28. Segurança na Internet 29. Internet das Coisas 30. Big Data 31. Inteligência Artificial - IA 32. Ambiente Virtual Aprendizagem 2 ● COMPUTAÇÃO: ciência que estuda o processo de resolução de problemas através da construção de algoritmos, desenvolvendo o Pensamento Computacional. ● COMPUTAÇÃO: ciência que explica o que é e como funciona o Mundo Digital. ○ Contribui para a evolução do conhecimento científico e tecnológico, e utilizar esse conhecimento em atividades de desenvolvimento, avaliação de métodos, ferramentas e soluções computacionais. Conceitos básicos 3 Conceitos básicos ● COMPUTADOR: é uma máquina composta de elementos eletrônicos, capaz de realizar uma grande quantidade de tarefas com alta velocidade e precisão, desde que receba as instruções adequadas. ○ Processa informações na forma de dados, podendo ser programado para a realização de diversas tarefas ● INFORMÁTICA: é o conjunto de métodos e técnicas para o tratamento automático da informação com o uso do computador. 4 ● LETRAMENTO DIGITAL: é o domínio de técnicas e habilidades para acessar, interagir, processar e desenvolver multiplicidade de competências na leitura das mais variadas mídias. ● Utiliza de forma eficiente e crítica diversas ferramentas que nos auxiliam a obter, analisar, organizar e repassar informações com diversos formatos e objetivos. Conceitos básicos 5 ● Letramento Digital é a capacidade de utilizar um sistema de símbolos e uma ferramenta tecnológica para compreender, gerar, comunicar e expressar ideias ou pensamentos [Mariana Bers]. ● O indivíduo não só aprende a usar a tecnologia e o meio digital, mas a utilizar suas funções da melhor forma, em seu proveito e com respeito pelos demais. Conceitos básicos 6 ● DADOS: Códigos que representam a matéria-prima da informação. São um conjunto de letras, números ou dígitos que, isoladamente, não contém significado claro. ● INFORMAÇÃO: Qualquer fato ou conhecimento do mundo real, possui significado, pode ser analisada para tomada de decisão ou fazer afirmação. ● EXEMPLO: ○ Dado: 38° C ○ Informação: Está muito quente hoje! Dados e Informação 7 ● Atualmente as pessoas interagem com diversos tipos de dados. Dados e Informação 8 ● TIPOS DE DADOS: ○ Número ○ Texto ○ Áudio ○ Imagem ○ Vídeo ● As pessoas precisam realizar o processamento desses diferentes tipos de dados para obter informações. No contexto, os computadores são os responsáveis por realizar esse processamento. Dados e Informação 9 Computadores 10 ● A execução de tarefas por parte do computador é fundamentada pela composição de Hardware e Software. Essa composição também é chamada de Sistema Computacional. Sistema Computacional Sistema Computacional Hardware Software 11 ● A execução de tarefas por parte do computador é fundamentada pela composição de Hardware e Software. Essa composição também é chamada de Sistema Computacional. ● HARDWARE: Representa a parte física de um computador, equipamento físico, parte que é possível tocar, por exemplo: fios, placas, telas, botões, chips, entre outros. ● SOFTWARE: Representa a parte lógica, não física de um computador. Composto por programas, conjunto de instruções que logicamente executamuma tarefa computacional. Sistema Computacional 12 Hardware ● Todo computador é formado por um conjunto de componentes de Hardware, os principais são: ○ Processador: Realiza o processamento de dados. ○ Memória: ■ RAM: Armazena dados e programas que estão sendo usados pelo usuário. Memória Volátil!! ■ ROM: Armazena dados do fabricante, necessário para fazer o computador funcionar. ■ HD: Armazena todos os dados e programas do usuário que não estão sendo usados. Memória não Volátil!! ○ Fonte/Bateria: Permite o funcionamento do Computador, passagem de eletricidade. ○ Placa-mãe: Interliga e permite a comunicação entre todos os componentes do computador. 13 Hardware 14 Hardware 15 ● O Software é dividido em duas categorias: Software Software Sistema Operacional Programas da Aplicação 16 ● O Software é dividido em duas categorias: ● Sistema Operacional: É um programa que controla todo o sistema computacional, ou seja, todas as atividades do computador. Atua como um administrador e facilita a execução de outros programas e acesso aos recursos de hardware e software. ● Programas da aplicação: São programas controlados pelo Sistema Operacional. Destinados para solucionar uma tarefa específica para o usuário. Exemplo: Calculadora. Software 17 ● Exemplos de Sistemas Operacionais: Sistemas Operacionais 18 ● Exemplos de Programas da Aplicação: ○ Editores de Texto: Programa básico para edição de textos, permite criar, editar e salvar textos simples. ○ Calculadora: Programa que simula uma máquina de calcular, permitindo que o usuário efetue operações matemáticas através da tela do computador. ○ Gravadores e Reprodutores de Vídeo: Programas que permitem criar arquivos de vídeo e reproduzir um conjunto de vídeos (imagem e som). ○ Compactadores: No computadores existem arquivos de tamanho muito grande, os programas compactadores permitem comprimir o tamanho desses arquivos e facilitar a transmissão rápida por exemplo para um pen-drive. Programas da Aplicação 19 ● Exemplos de Programas da Aplicação: Programas da Aplicação 20 ● O processamento de dados é realizado de acordo com a esquematização da figura abaixo. ○ Os Dados entram no computador, é realizado um processamento específico e o resultado ou informação de saída é exibida para o usuário. Processamento de Dados 21 ● Os dados são armazenados no computador em um formato uniforme e depois são processados. ○ Formato uniforme: Padrão Binário. ● Após o processamento os dados armazenados são recuperados e transformados novamente para seu formato original. Representação de Dados 22 ● PADRÃO BINÁRIO: Representação universal dos dados armazenados em um computador. ○ O formato utiliza dois dígitos, ZERO e UM, que representam o estado do dispositivo. ● 0 - Desligado ou ausência de pulso elétrico ● 1 - Ligado ou presença de pulso elétrico ● O Computador é uma máquina elétrica, assim funciona com base em pulsos elétricos. ● O padrão binário é a linguagem que o computador consegue entender. Representação de Dados 23 ● PADRÃO BINÁRIO: Formato uniforme, representação universal dos dados armazenados em um computador. ○ Bit é a menor unidade de dados que pode ser armazenada em um computador. ■ Um Bit pode ter o valor de 0 ou 1. ○ Entretanto os dados presentes são ○ armazenados e representados por uma sequência de bits. ● Exemplo: 8 bits, combinação de 0s e 1s, totalizando 8 bits. 10001011 Representação de Dados 24 ● EXEMPLO PADRÃO BINÁRIO: ○ Sistema decimal ■ Números de base 10, formados por símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. ○ Sistema Binário ■ Números de base 2, formados pelos símbolos 0 e 1. ○ Exemplo: O número 19 no sistema decimal é representado como 10011 no sistema binário. Representação de Dados 25 ● EXEMPLO PADRÃO BINÁRIO: ○ Exemplo: O número 19 no sistema decimal é representado como 10011 no sistema binário. ■ Como obter representação binária de um número inteiro decimal? ● Método das divisões sucessivas por 2. Representação de Dados 26 ● EXEMPLO PADRÃO BINÁRIO: ○ Exemplo: O número 19 no sistema decimal é representado como 10011 no sistema binário. ■ Como obter representação binária de um número inteiro decimal? ● Método das divisões sucessivas por 2. Representação de Dados 27 ● Para facilitar a manipulação, processamento e quantificação dos dados, foram criadas unidades de medidas para tipos de dados e arquivos. De modo análogo ao: ○ Peso (gramas, quilogramas...) ○ Distância (centímetros, metros, quilômetros...) ○ Tempo (segundos, minutos, horas…) ● O Conjunto de 8 bits é chamado de byte. ● Quanto maior a quantidade de dados maior a quantidade de bits necessária para armazenar esses dados no computador. Armazenamento de Dados 28 ● O Conjunto de 8 bits é chamado de byte. Armazenamento de Dados Unidade Equivalência 1 Byte 8 bits 1 Kilobyte (KB) 1024 Bytes 1 Megabyte (MB) 1024 Kilobytes 1 Gigabyte (GB) 1024 Megabytes 1 Terabyte (TB) 1024 Gigabytes 1 Petabyte (PB) 1024 Terabytes 29 ● Espaço de armazenamento: ○ Desktops e Notebooks ■ Memória RAM: 4GB - 16GB ■ HD: 120GB - 2TB ■ SSD: 120GB - 500GB ○ Smartphones ■ Memória RAM: 4GB - 8GB ■ Armazenamento interno: 16GB - 512GB Armazenamento de Dados HD SSD 30 Armazenamento de Dados Tamanhos de arquivos: Vídeos: Em geral, são os arquivos que ocupam maior espaço de armazenamento. Quanto maior a duração e resolução do vídeo, maior será o tamanho do arquivo que deverá ser armazenado. Exemplo: Resolução: Full HD (1920 x 1080) Duração: 1 min Tamanho do arquivo de vídeo: 144 MB 31 Armazenamento de Dados Tamanhos de arquivos: Fotos: Quanto maior a resolução da imagem maior será o tamanho do arquivo que deverá ser armazenado. Exemplo: Resolução: 4096 x 2304 Tamanho do arquivo de imagem: 1,61 MB Documentos: Em geral, são arquivos que não demandam muito espaço de armazenamento. Exemplo: Texto de 5 páginas com 1846 palavras Tamanho do arquivo de texto: 12 KB 32 PENSAMENTO COMPUTACIONAL Letramento Digital 33 PENSAMENTO COMPUTACIONAL Letramento Digital – Parte 2 1 ● REDES DE COMPUTADORES: Conjunto de Computadores conectados entre si. Essa conexão permite que um Computador dentro da rede consiga trocar informações e compartilhar recursos com todos os outros computadores dentro da mesma rede. Redes de Computadores e a Internet 2 ● INTERNET: Consiste em centenas de Redes de Computadores conectadas ao redor do mundo. ○ É uma Rede composta por várias outras Redes, composta por milhões de empresas privadas, públicas, acadêmicas e governamentais. ○ Cada governo, companhia ou organização é responsável por manter a sua própria rede. ○ A Internet permite o compartilhamento de dados e consequentemente de informações com milhões de pessoas espalhadas pelo mundo. Redes de Computadores e a Internet 3 ● Ter acesso a um provedor de internet: ○ Empresas comerciais que fornecem acesso à Internet, normalmente esse serviço é pago. ○ Internet local: ■ Acesso à internet em um local físico específico, exemplo: prédio ou residência. ○ Internet Móvel: ■ Acesso à Internet para dispositivos móveis, é possível estar conectado independentemente do local que o usuário estiver. ● 4G é a tecnologia vigente no Brasil que possibilita o acesso à Internet móvel. Como se conectar à Internet 4 Como se conectar à Internet 5 Como se conectar à Internet 6 ● Determina a medida da capacidade de transmissão, em especial de conexão ou rede - velocidade de transmissão ● BANDA LARGA: Conexão com a Internet que permite aos usuários navegar com alta velocidade, ou seja, o acesso a sites, reprodução de vídeos entre outros serviços ocorre rapidamente e sem travamentos. ● O termo Banda Larga faz alusão a uma maior quantidade de dados sendo transmitida em alta velocidade. ○ Quanto mais dados podem ser transmitidos simultaneamente maior a largurade banda e velocidade da internet. Largura de banda 7 ● Numa pista com mais faixas, mais carros trafegam simultaneamente. De modo análogo, quanto maior a largura de banda mais dados são transmitidos simultaneamente. Largura de banda 8 ● WORLD WIDE WEB (WWW): É um serviço da Internet que possibilita um sistema de documentos em hipermídia interligados e executados na Internet. ○ Esses documentos são compostos por Vídeos, Sons, textos e imagens, e são comumente denominados Sites ou Páginas Web. ○ Existem milhões de sites disponíveis na Internet. ■ Contendo informações sobre: ciências, tecnologia, artes, esportes, notícias, entre outros assuntos. ○ Os sites são normalmente acessados por um programa de computador chamado Navegador. Redes de Computadores e a Internet 9 ● Exemplos de Navegadores: ○ Microsoft Edge ○ Microsoft Internet Explorer ○ Google Chrome ○ Mozilla Firefox ○ Opera ○ Apple Safari Redes de Computadores e a Internet 10 Redes de Computadores e a Internet 11 Redes de Computadores e a Internet Figura n - Exemplo de Site de uma Universidade 12 ● Ao ler um livro, uma revista ou uma carta, o sentido de leitura segue apenas um fluxo linear. ● Os sites ou Páginas Web incorporam o conceito de Hipertexto, que possibilita a leitura não linear de um documento. ○ Possibilita interatividade e livre escolha para começar a leitura por qualquer parte da teia de documentos que compõem uma Página Web. ● Além disso o Hipertexto possibilita a apresentação de textos dentro de outros textos, na escrita eletrônica isso é possível por meio de links. Hipertexto 13 ● Estrutura do Hipertexto: Hipertexto 14 ● PORTAL NA WEB: Nada mais que um site ou Página na Internet, projetado para aglomerar e distribuir conteúdos de várias fontes diferentes. ● Ponto de acesso para um conjunto de outros sites relacionados ao portal. ● Em geral, os portais oferecem informações relevantes para um grande volume de usuários e precisam ser bem desenvolvidos para evitar que seu acesso fique lento. Portais na Web 15 Portais na Web 16 ● O Blog é um site eletrônico que possibilita a atualização rápida. Seu conteúdo é composto por artigos de opinião, postagens e publicações. ● O conteúdo de um Blog geralmente aborda um tema específico e pode ser escrito por um ou mais autores. ● Os conteúdos de um Blog são organizados de forma cronológica, contudo, seguem o conceito de Hipertexto. Blog 17 O Blogger é uma plataforma da Google que permite a usuários criarem e administrarem seus próprios Blogs. Blog 18 ● O Wiki é um site cujo o objetivo é definir e trazer informações históricas e fatos a respeito de algo ou alguém. ● Em geral, os conteúdos dos sites do tipo Wiki possuem diversos autores, qualquer pessoa pode adicionar ou editar uma informação sobre qualquer conteúdo presente no Wiki. ● A Wikipédia é o exemplo mais difundido Wiki presente na Internet. Wiki 19 ● Todo site presente na Internet é acessado por um endereço único, esse endereço é chamado de Domínio. ● Domínio: ○ www seguido de “.” seguido do nome do site seguido de “.” e por fim a localização do site na Internet. ○ Exemplo: http://www.escola.br ● Siglas comuns em Domínios: ○ com: Comercial: (ex: www.xerox.com.br) ○ gov: Governamental: (ex: www.mec.gov.br) ● Registro Domínio: fapesp.org/registro-de-dominio/ Domínio 20 ● O protocolo HTTP possibilita a transferência de Hipertexto. Através do HTTP os navegadores possibilitam o acesso para páginas web. ○ O protocolo HTTP é totalmente baseado em texto, logo a informação e dados é transmitida por meio de texto. ■ Problema: informações textuais são fáceis de serem roubadas ou manipuladas. ● HTTPS possui a mesma finalidade do HTTP, contudo as informações textuais são criptografadas resultando em uma maior segurança. ○ Exemplo: https://www.mec.gov.br Protocolo HTTP e HTTPS 21 ● Existem milhões de dados, consequentemente informações, disponíveis na Internet. Conteúdos variados como: saúde, educação, tecnologia, esportes, entretenimento, entre outros. ● Muitas vezes um usuário acessa a Internet com o objetivo de encontrar informações sobre um conteúdo específico. Para auxiliar os usuários da Internet nessa busca existem Ferramentas de Busca, também chamadas de Motores de Busca. ● Essas Ferramentas filtram apenas conteúdos de um assunto específico buscado e apresenta-os para o usuário. Buscas na Web 22 ● O Google é a maior e mais utilizada Ferramenta de Busca da Atualidade. Buscas na Web 23 Buscas na Web 24 ● O Google é a maior e mais utilizada Ferramenta de Busca da Atualidade. ○ Retorna Sites, Notícias, Imagens, Vídeos sobre o conteúdo buscado na Internet. ○ Realiza a busca e exibe muitos resultados em menos de 1 segundo. Buscas na Web 25 ● O Google e algumas ferramentas de busca na web possibilitam recursos de buscas avançadas na web. A busca avançada permite obter resultados de busca mais precisos rapidamente. ○ Frase específica: Buscar conteúdos que possuam exatamente a frase buscada. Basta colocar a frase entre aspas “” no campo de busca. ○ Significado de palavras: Buscar o significado de uma palavra. Basta colocar define: palavra no campo de busca. Buscas Avançadas na Web 26 ○ Excluir palavras: Buscar sites que não possuam no conteúdo um determinado termo indesejado - usar hifens. ○ Caractere coringa: Ao utilizar o caractere coringa (*) o Google o substitui por qualquer palavra ○ Operador OR: Combine pesquisas em uma mesma consulta colocando o operador OR entre os termos de pesquisa Buscas Avançadas na Web univesp -vestibular * mais alto do mundo univesp or unesp 27 ○ Tipo de documento: Buscar conteúdos de um tipo de documento específico. Basta colocar filetype:tipo documento assunto do documento no campo de busca. ○ Site relacionado: Buscar sites que possuam conteúdo relacionado a um site pesquisado: Basta colocar related: www.site.com no campo de busca. ○ Existem outras diversas configurações disponíveis. Para realizar pesquisas avançadas no Google acesse: https://www.google.com/advanced_search?hl=pt-BR&fg=1 Buscas Avançadas na Web 28 PENSAMENTO COMPUTACIONAL Letramento Digital – Parte 2 29 PENSAMENTO COMPUTACIONAL Letramento Digital – Parte 3 ● O Correio Eletrônico ou e-mail é um serviço da Internet que permite enviar e receber mensagens (Carta Eletrônica) de qualquer usuário ao redor do mundo que faz uso da Internet. ○ O serviço de Correio Eletrônico é o serviço mais antigo da Internet, sendo crucial para sua criação. ○ Quando enviamos uma carta eletrônica, costumamos dizer que enviamos um e-mail para alguém. ● ENDEREÇO DE E-MAIL: ○ Endereço único por pessoa que pode ser utilizado para receber e enviar e-mails. ● Exemplo: joão.carlos@gmail.com Correio Eletrônico ● ESTRUTURA DE E-MAIL: ○ Cabeçalho do e-mail: ■ Contém informações como Título do e-mail, data de envio, endereço de e-mail do remetente e do(s) destinatário(s). ○ Corpo do e-mail: ■ Contém o conteúdo do e-mail em geral informações textuais semelhantes a uma carta convencional. Além disso, pode ter imagens, áudio, vídeo, links e documentos anexados. ○ Anexo: ■ Conteúdo em anexo é o conteúdo que está armazenado no HD do computador e é anexado ao e-mail visando compartilhamento. Correio Eletrônico ● SERVIÇO DE E-MAIL: Programa de computador, site ou plataforma e oferece serviços de e-mail, como: criar um endereço de e-mail, enviar, receber e organizar e-mails. ● Principais serviços de e-mail: ○ Gmail (Google) ○ Outlook (Microsoft) Correio Eletrônico Correio Eletrônico ● COMPUTAÇÃO EM NUVEM: Fornecimento de serviços de computação, incluindo servidores, armazenamento, bancos de dados, rede, software, análise e inteligência pela Internet (“a nuvem”) Computação em Nuvem Oferece inovações e soluções mais rápidas, recursos flexíveis e economias de escala. ● Consiste em armazenar qualquer