Aplicações simples para telemóvel e web
Na turma do 9.º B, a Leonor quer uma aplicação para a associação de estudantes registar quem já pagou a visita de estudo. Antes de abrir qualquer programa, tem de pensar: o que é que a aplicação deve fazer, como se desenha, como se testa e quem a vai poder usar? Neste apartado percorres esse caminho, da ideia à aplicação publicada.
Da ideia à aplicação publicada
Em cada fase respondes a uma pergunta: Ideia (que problema resolve?), desenho (como são os ecrãs?), algoritmo (que passos segue?), programação (como se escreve ou se monta em blocos?), testes (funciona mesmo, em todos os casos?) e publicação (como chega às pessoas?).
Enumera as etapas do desenvolvimento de uma aplicação, desde a ideia até à sua utilização por outras pessoas, e explica em que consiste cada uma. Justifica por que razão…
Enumera as etapas do desenvolvimento de uma aplicação, desde a ideia até à sua utilização por outras pessoas, e explica em que consiste cada uma. Justifica por que razão não convém saltar a fase de testes, mesmo que o programa pareça funcionar.
Antes de programar convém desenhar o protótipo em papel. Descreve (ou desenha no teu caderno) os três ecrãs de uma aplicação «contador de copos de água»: o ecrã…
Antes de programar convém desenhar o protótipo em papel. Descreve (ou desenha no teu caderno) os três ecrãs de uma aplicação «contador de copos de água»: o ecrã principal com o contador, o botão para somar um copo e um ecrã de histórico, indicando o que faz cada botão.
Podes fazê-lo em papel e enviar uma fotografia com a tua resposta.
Entrada, processamento e saída
Para testar, escolhe sempre três tipos de dados: um normal (4), um extremo (1 e 5) e um inválido (vazio, 42, uma letra). Se a aplicação reagir bem aos três, passou no teste.
Quando o algoritmo tem várias perguntas, como num teste de cultura geral, usa uma variável para a pontuação, uma decisão (acertou? soma 1) e uma repetição (repetir para cada pergunta).
Uma aplicação calcula a gorjeta que convém deixar num restaurante a partir do valor da conta. Identifica que dados o utilizador introduz (entrada), o que a aplicação faz…
Uma aplicação calcula a gorjeta que convém deixar num restaurante a partir do valor da conta. Identifica que dados o utilizador introduz (entrada), o que a aplicação faz com eles (processamento) e o que mostra no final (saída), seguindo o esquema entrada → processamento → saída.
A figura mostra o desenho do ecrã de uma aplicação que converte distâncias de quilómetros para milhas, sabendo que $1\ \text{milla}$ equivale a $1,6\ \text{km}$. Escreve…
A figura mostra o desenho do ecrã de uma aplicação que converte distâncias de quilómetros para milhas, sabendo que $1\ \text{milla}$ equivale a $1,6\ \text{km}$.
Escreve os passos que a aplicação deve seguir quando o utilizador prime o botão para apresentar o resultado, e indica o que deveria acontecer se o utilizador premir «Converter» sem ter escrito nenhum número.
Uma aplicação muito simples recebe um texto e devolve-o escrito em maiúsculas. Analise o seu esquema entrada → processo → saída e proponha duas utilidades reais que uma…
Uma aplicação muito simples recebe um texto e devolve-o escrito em maiúsculas. Analise o seu esquema entrada → processo → saída e proponha duas utilidades reais que uma aplicação deste tipo poderia ter dentro de outra maior.
Descreva o algoritmo de uma aplicação de teste com cinco perguntas: como se guarda a pontuação, o que acontece quando o utilizador acerta ou erra, como se passa à…
Descreva o algoritmo de uma aplicação de teste com cinco perguntas: como se guarda a pontuação, o que acontece quando o utilizador acerta ou erra, como se passa à pergunta seguinte e o que é mostrado no final. Use passos numerados com decisões e uma repetição.
Uma aplicação que calcula a média das notas dá resultados absurdos quando alguma caixa fica vazia ou quando alguém escreve uma nota de 42. Explique o que são dados de…
Uma aplicação que calcula a média das notas dá resultados absurdos quando alguma caixa fica vazia ou quando alguém escreve uma nota de 42. Explique o que são dados de entrada inválidos, proponha dois controlos que a aplicação deveria fazer antes de calcular e descreva os testes que faria para verificar que já não falha.
Ecrãs, elementos, protótipos e acessibilidade
Acessibilidade elementar
Uma boa aplicação é utilizável por todos. Regras simples:
-
Contraste: texto escuro sobre fundo claro (evita cinzento-claro sobre branco).
-
Tamanho: texto legível e botões grandes, com espaço entre eles, para dedos e para quem tem dificuldades motoras.
-
Não depender só da cor: acrescenta texto ou ícone. Quem não distingue vermelho de verde precisa de uma palavra como «Erro» ou «Certo».
-
Texto alternativo nas imagens, para o leitor de ecrã as poder descrever a quem não vê.
-
Compatibilidade com o leitor de ecrã: dá nomes claros aos botões e às caixas de texto, para que o leitor de ecrã os possa ler em voz alta.
Onboarding: o primeiro contacto
O onboarding são os ecrãs de apresentação que aparecem na primeira vez que abres a aplicação. Servem para mostrar, em poucos ecrãs, o que a aplicação faz e como se usa. Uma boa sequência tem três ecrãs: 1. para que serve a aplicação; 2. como se usa a função principal; 3. que permissões pede e porquê. Deve haver sempre um botão «Saltar», porque quem já conhece aplicações parecidas não quer perder tempo.
Os ecrãs de uma aplicação são construídos com elementos básicos: botões, etiquetas de texto, caixas de introdução de texto e imagens. Explica para que serve cada um…
Os ecrãs de uma aplicação são construídos com elementos básicos: botões, etiquetas de texto, caixas de introdução de texto e imagens. Explica para que serve cada um desses quatro elementos e dá um exemplo de cada um numa aplicação que uses com frequência.
As notificações avisam de novidades, mas demasiadas notificações fazem com que o utilizador desinstale a aplicação. Desenhe a política de avisos da aplicação de leitura…
As notificações avisam de novidades, mas demasiadas notificações fazem com que o utilizador desinstale a aplicação. Desenhe a política de avisos da aplicação de leitura da turma: que três avisos enviaria, que avisos não enviaria e que opções de configuração deixaria ao utilizador.
Avalie a acessibilidade deste ecrã de aplicação: botões muito juntos e pequenos, texto cinzento-claro sobre fundo branco e toda a informação apenas em cores (sem…
Avalie a acessibilidade deste ecrã de aplicação: botões muito juntos e pequenos, texto cinzento-claro sobre fundo branco e toda a informação apenas em cores (sem textos). Proponha três melhorias concretas e explique que utilizadores são beneficiados por cada uma.
O «onboarding» são os ecrãs que apresentam a aplicação na primeira vez que é aberta. Desenhe o onboarding de três ecrãs para a aplicação da cantina escolar: o que mostra…
O «onboarding» são os ecrãs que apresentam a aplicação na primeira vez que é aberta. Desenhe o onboarding de três ecrãs para a aplicação da cantina escolar: o que mostra cada ecrã, o que aprende o utilizador em cada um e por que razão deve existir um botão de «saltar».
Ligação, armazenamento e permissões
Quando falta a ligação, uma boa aplicação não se limita a falhar: mostra uma mensagem clara («Sem ligação. A mostrar a última previsão de ontem») e oferece opções, como «Tentar de novo» ou «Continuar sem ligação».
Se desinstalares a aplicação ou mudares de telemóvel sem cópia de segurança, os dados do armazenamento local perdem-se: nível, moedas e recorde desaparecem.
Permissões e dados recolhidos
Os telemóveis têm sensores (localização por georreferenciação, câmara, microfone) e a aplicação tem de pedir permissão para os usar. Podes ver e alterar essas permissões nas definições do telemóvel.
Pensar na privacidade desde o início
Quando crias uma aplicação, pede apenas os dados mínimos de que ela precisa. Uma aplicação de tarefas da turma precisa do nome da tarefa e da data, mas não da localização nem dos contactos. Explica isto na página da loja: os utilizadores confiam mais em quem é transparente. A lei europeia (RGPD) e a CNPD em Portugal protegem os dados pessoais, sobretudo dos menores.
Consumo de bateria
Cada função gasta energia: consultar o GPS muitas vezes, manter o ecrã sempre aceso com brilho máximo e descarregar dados por rede móvel em tempo real descarregam a bateria depressa. Reduz a frequência das leituras, baixa o brilho e guarda no telemóvel o que se repete (por exemplo, mapas descarregados antes).
Controlo automático: sensores, controlo e atuadores
Portas automáticas, semáforos e robots usam o mesmo esquema: sensores recolhem informação, uma unidade de controlo decide e os atuadores agem. Por vezes há também verificação do resultado (realimentação): o sistema mede se o que fez deu o efeito pretendido e corrige se for preciso. É o esquema entrada–processamento–saída aplicado a objetos.
Algumas aplicações funcionam sem ligação à Internet e outras não conseguem fazer nada sem ela. Explique que diferença existe entre ambos os tipos e classifique estas…
Algumas aplicações funcionam sem ligação à Internet e outras não conseguem fazer nada sem ela. Explique que diferença existe entre ambos os tipos e classifique estas aplicações justificando a sua resposta: uma calculadora, uns mapas com trânsito em tempo real, um teste de perguntas já descarregado e uma aplicação de mensagens.
Um jogo lembra-se do seu nível, das suas moedas e do seu recorde mesmo que feche a aplicação. Explique o que é o armazenamento local de uma aplicação, que dados guarda…
Um jogo lembra-se do seu nível, das suas moedas e do seu recorde mesmo que feche a aplicação. Explique o que é o armazenamento local de uma aplicação, que dados guarda esse jogo e justifique o que acontecerá com eles se desinstalar a aplicação ou mudar de telemóvel sem cópia de segurança.
Uma aplicação meteorológica funciona em parte sem ligação: mostra a última previsão descarregada, mas não a atualiza. Explique que partes de uma aplicação podem…
Uma aplicação meteorológica funciona em parte sem ligação: mostra a última previsão descarregada, mas não a atualiza. Explique que partes de uma aplicação podem continuar a funcionar sem Internet e desenhe a mensagem de «sem ligação» que o utilizador veria: o que deve dizer e que opções deve oferecer.
Uma aplicação de lanterna pede permissão para aceder aos contactos, à localização e ao microfone. Analise se essas permissões são necessárias para a sua função, que…
Uma aplicação de lanterna pede permissão para aceder aos contactos, à localização e ao microfone. Analise se essas permissões são necessárias para a sua função, que riscos tem concedê-las sem pensar e redija um critério de três perguntas para decidir que permissões aceitar em qualquer aplicação.
Numa caminhada de 8 horas, a app que programaste para registar a rota esgota completamente a bateria dos telemóveis em apenas 2,5 horas. Ao reveres o código e a…
Numa caminhada de 8 horas, a app que programaste para registar a rota esgota completamente a bateria dos telemóveis em apenas 2,5 horas. Ao reveres o código e a configuração, detetas três fatores:
1) O sensor GPS consulta as coordenadas a cada 0,5 segundos.
2) O ecrã permanece ligado com o brilho a 100 % a mostrar o mapa.
3) A app descarrega os mapas via 4G em tempo real em vez de os guardar na memória.
Justifica tecnicamente o impacto de cada fator no consumo energético e propõe uma modificação concreta para cada um que permita completar a rota de 8 horas sem esgotar a bateria.
Aplicando a ideia de «privacidade desde a conceção», defina que dados mínimos pediria realmente uma aplicação de tarefas da turma para funcionar, que dados NÃO pediria…
Aplicando a ideia de «privacidade desde a conceção», defina que dados mínimos pediria realmente uma aplicação de tarefas da turma para funcionar, que dados NÃO pediria embora «pudessem ser úteis» e como explicaria essas decisões aos utilizadores na página da loja.
Desafio do tema. A tua missão é criar um protótipo de aplicação interativa que recomende aos teus vizinhos como vestir-se e se precisam de guarda-chuva de acordo com a…
Desafio do tema. A tua missão é criar um protótipo de aplicação interativa que recomende aos teus vizinhos como vestir-se e se precisam de guarda-chuva de acordo com a previsão meteorológica oficial.
-
Recolha de dados reais: Consulta no site do IPMA a previsão para amanhã no teu concelho e regista numa tabela a temperatura máxima ($T_{\text{máx}}$ em ºC) e a probabilidade de precipitação ($P$ em %).
-
Pensamento computacional: Desenha um fluxograma com condicionais lógicas (por exemplo, se $T_{\text{máx}} < 16,5\text{ ºC}$ ou se $P \ge 50\,\%$) para determinar que conselhos mostrar.
-
Programação por blocos: Implementa o teu protótipo no Scratch ou App Inventor. A aplicação deve pedir ambos os valores numéricos e mostrar uma mensagem gráfica adequada de acordo com as condições avaliadas.
-
Relatório final: Elabora um relatório breve (uma página) com a captura do fluxograma, a tabela com os dados reais do IPMA, a ligação pública para o teu programa e um teste de funcionamento.
Será valorizado:
-
Correção lógica do fluxograma e uso adequado de condicionais.
-
Funcionamento interativo e sem erros do código por blocos com os dados introduzidos.
-
Design intuitivo e claro da interface do utilizador.
-
Qualidade do relatório breve e justificação das decisões tomadas.
Escolher, atualizar e confiar numa aplicação
Notificações
As notificações avisam o utilizador de novidades importantes. Envia só avisos úteis e esperados: por exemplo, um novo livro disponível, um prazo a acabar ou uma resposta a uma mensagem. Não envies avisos repetidos, publicitários ou a horas incómodas, porque demasiadas notificações fazem o utilizador desinstalar a aplicação. Deixa sempre opções de configuração: ligar ou desligar cada tipo de aviso, escolher o horário e o modo silencioso.
Atualizar as aplicações corrige falhas de segurança e melhora o funcionamento. Quem não atualiza fica exposto a falhas já conhecidas. Por vezes uma atualização muda uma função de que gostavas, porque os programadores alteraram o desenho ou retiraram algo para corrigir problemas.
Direitos de autor e licenças
Se usares imagens, sons ou bibliotecas na tua aplicação, não podes usar tudo o que encontras na Internet. Usa materiais com licença que o permita (por exemplo, Creative Commons), respeita as condições (como indicar o autor) e refere a fonte. As tuas criações também são protegidas por direitos de autor.
Aplicação nativa ou aplicação web
Uma aplicação nativa publica-se nas lojas (Android, iPhone), exige uma versão por plataforma e tem custos de publicação: a Google Play cobra uma taxa única de registo de programador e a App Store uma quota anual de programador, o que é um problema para uma escola com orçamento de 0 €. Uma aplicação web corre no navegador, serve qualquer dispositivo (Android, iPhone, Linux), não precisa de loja e não obriga a pagar essas taxas. Com ligação Wi-Fi instável, pode guardar os dados no dispositivo e sincronizá-los quando a ligação voltar.
Ganhar dinheiro com uma aplicação
Os anúncios, as compras dentro da aplicação e as subscrições são modelos comuns. Numa escola, com menores, levantam problemas: publicidade dirigida a crianças, recolha de dados pessoais sem consentimento e pagamentos que dividem a turma entre quem pode e quem não pode pagar. Alternativas: apoio da escola ou da associação de estudantes, aplicação gratuita e sem anúncios, ou donativos voluntários.
Antes de instalar uma aplicação da loja convém verificar vários dados. Explica o que te indicam as avaliações, o número de transferências, as permissões solicitadas e o…
Antes de instalar uma aplicação da loja convém verificar vários dados. Explica o que te indicam as avaliações, o número de transferências, as permissões solicitadas e o nome do programador, e que combinação desses dados te faria desconfiar.
As aplicações são atualizadas periodicamente. Explica dois motivos pelos quais convém mantê-las atualizadas e um risco de não o fazer, e justifica por que razão, por…
As aplicações são atualizadas periodicamente. Explica dois motivos pelos quais convém mantê-las atualizadas e um risco de não o fazer, e justifica por que razão, por vezes, uma atualização altera funcionalidades de que gostavas.
Algumas aplicações são descarregadas primeiro como «versão beta» para um grupo pequeno de utilizadores. Explique o que significa essa etiqueta, que vantagens tem testar…
Algumas aplicações são descarregadas primeiro como «versão beta» para um grupo pequeno de utilizadores. Explique o que significa essa etiqueta, que vantagens tem testar assim antes do lançamento oficial e que duas coisas deveria esperar de uma versão beta (e não ficar chateado quando acontecerem).
Projeta uma aplicação completa chamada «Desafios de leitura» para a turma registar os livros que vai a ler: ecrãs que teria, dados de entrada e saída de cada um,…
Projeta uma aplicação completa chamada «Desafios de leitura» para a turma registar os livros que vai a ler: ecrãs que teria, dados de entrada e saída de cada um, algoritmo principal e três testes concretos que farias antes de a publicar.
A equipa diretiva da escola quer encomendar uma app nativa na Google Play e App Store para consultar o catálogo da biblioteca, mas a escola dispõe de um orçamento de 0 €…
A equipa diretiva da escola quer encomendar uma app nativa na Google Play e App Store para consultar o catálogo da biblioteca, mas a escola dispõe de um orçamento de 0 € e os alunos utilizam dispositivos muito diversos (telemóveis Android, iPhone e computadores com Linux). Refuta a proposta da direção analisando os custos de publicação em lojas e os problemas de compatibilidade entre plataformas. De seguida, justifica por que razão uma aplicação web (web app) é a opção tecnicamente mais adequada e explica que solução aplicarias se a escola sofrer quebras frequentes de ligação Wi-Fi.
A tua equipa programou uma aplicação para organizar os torneios desportivos do intervalo. Um colega propõe financiá-la inserindo anúncios de uma rede comercial e…
A tua equipa programou uma aplicação para organizar os torneios desportivos do intervalo. Um colega propõe financiá-la inserindo anúncios de uma rede comercial e cobrando 0,99 € mediante compras dentro da aplicação para desbloquear as estatísticas avançadas. Justifica dois problemas legais ou éticos que este modelo apresenta ao ser aplicado numa escola com menores de idade. Depois, desenha um modelo alternativo para sustentar e manter a aplicação sem recorrer a publicidade invasiva nem a pagamentos que discriminem parte dos alunos.
Vais descarregar uma aplicação para calcular notas e encontras a «SuperNotas». Na loja de aplicações observas os seguintes dados: Classificação média: 4,9 ★ com 2 500…
Vais descarregar uma aplicação para calcular notas e encontras a «SuperNotas». Na loja de aplicações observas os seguintes dados:
-
Classificação média: 4,9 ★ com 2 500 avaliações.
-
Datas e texto: 90 % das 5 ★ foram publicadas em apenas três dias consecutivos, com textos idênticos («Excelente app») e perfis sem imagem.
-
Permissões exigidas: Acesso à lista de contactos, localização precisa e microfone.
Interpreta estes dados: explica que prática fraudulenta está a ocorrer e que objetivo persegue. De seguida, prevê que riscos assume quem a instalar guiando-se apenas pela classificação média e redige duas verificações obrigatórias que se devem fazer sempre antes de instalar uma aplicação desconhecida.
Volta ao princípio: para a aplicação da Leonor funcionar, ela precisa de ideia, protótipo, algoritmo, programa, testes com dados inválidos, permissões mínimas, acessibilidade e licenças respeitadas.