Want to create interactive content? It’s easy in Genially!

Get started free

Técnicas de Deteção e Tratamento de Erros

JOANA FILIPA TELES SILVA JOANA FILIPA TE

Created on March 25, 2026

Start designing with a free template

Discover more than 1500 professional designs like these:

Historical Presentation

Human Rights Presentation

Memphis Presentation

Blackboard Presentation

Florida Neon Presentation

Genial Storytale Presentation

Psychedelic Presentation

Transcript

Técnicas de Deteção e Tratamento de Erros

Start

O que é um erro?

Em programação, um erro acontece quando algo no código não funciona como esperado. Isto pode acontecer por várias razões, como um erro na escrita do código, dados inválidos introduzidos pelo utilizador ou problemas no sistema. O tratamento de erros consiste em criar mecanismos no programa que permitam identificar esses problemas e lidar com eles de forma controlada. O objetivo é evitar que o programa pare de funcionar completamente e garantir que o utilizador receba uma resposta adequada.

Tipos de erros

Existem dois tipos principais de erros: Erros para programadores (técnicos): mensagens detalhadas que indicam exatamente onde ocorreu a falha, como NullReferenceException ou IndexOutOfRangeException. São importantes para corrigir o código. Exemplo:

NullReferenceException: Object reference not set to an instance of an object.

Erros para utilizadores (operacionais): mensagens simples e compreensíveis, que explicam o problema sem entrar em detalhes técnicos. Exemplo: “Ocorreu um problema ao carregar a cena. Por favor, tente novamente.”

Códigos de Erro

Os códigos de erro são identificadores que indicam tipos específicos de falhas, normalmente usados para diagnóstico e monitorização.

Exemplos:

Enquanto os códigos ajudam os programadores a localizar problemas, as mensagens amigáveis informam os utilizadores sem expor detalhes técnicos.

Ferramentas e Técnicas de Tratamento

Algumas ferramentas essenciais:

Debuggers: permitem percorrer o código linha a linha e observar variáveis em tempo real. Logs: registam eventos do sistema para análise posterior. Breakpoints: pausam a execução do código em pontos específicos para inspeção. Testes automatizados: verificam se funções e módulos continuam a funcionar corretamente.

Na minha PAP, usei estas ferramentas para identificar erros no Unity e nos scripts C#, principalmente erros como UnassignedReferenceException e problemas de lógica.

Conceitos Fundamentais

Try/Catch: blocos que capturam exceções e permitem tratar erros sem interromper o programa. Validação de entradas: impede que dados inválidos causem falhas. Exceções: representam erros que podem ser previstos e tratados. Logs: registos de ações e erros, essenciais para análise de problemas.

Implicações Práticas

Um bom tratamento de erros traz várias vantagens: Evita que o sistema pare de funcionar inesperadamente Melhora a experiência do utilizador Facilita a identificação de problemas Torna o sistema mais estável e seguro Sem um bom tratamento de erros, os programas tornam-se mais difíceis de utilizar e manter.

Esclarecimento de conceitos

Os blocos try/catch permitem executar uma parte do código e capturar possíveis erros.

Validação de entradas

Isto é importante porque os utilizadores normalmente não têm conhecimentos técnicos para interpretar códigos de erro.

Por exemplo:

verificar se um email tem formato correto verificar e um campo numérico contém apenas números

Revisão de Código e Testes

A revisão de código acontece quando outros programadores analisam o código para encontrar possíveis erros ou melhorias. Os testes servem para verificar se o sistema funciona corretamente antes de ser utilizado pelos utilizadores.

Alguns tipos de testes são:

  • Testes unitários
  • Testes de integração
  • Testes funcionais

Estas práticas ajudam a reduzir erros e a melhorar a qualidade do software.

Blocos de instruções e aplicabilidade em diferentes linguagens

Apesar das diferenças na sintaxe, o objetivo é o mesmo: detectar e tratar erros durante a execução do programa.

Tratamento de erros em diferentes níveis

  • O tratamento de erros pode acontecer em vários níveis:

Aplicação – erros no próprio programa, como dados inválidos. Sistema – problemas no sistema operativo ou em ficheiros. Infraestrutura – falhas em servidores, rede ou bases de dados.

Cada nível exige estratégias diferentes de tratamento de erros.

Tentativas de reconexão em caso de falhas temporárias

Em alguns casos os erros são temporários, como por exemplo uma falha de ligação à internet ou a um servidor. Nestes casos o sistema pode tentar reconectar automaticamente após alguns segundos. Isto evita que o utilizador tenha de repetir a operação manualmente.

Padronização

A padronização consiste em utilizar regras e métodos comuns no desenvolvimento de software.

utilização de formatos iguais para mensagens de erro utilização de códigos de erro padronizados utilização das mesmas práticas de logging

Isto facilita a manutenção e a compreensão do código.

Tentativas de reconexão em caso de falhas temporárias

Em alguns casos os erros são temporários, como por exemplo uma falha de ligação à internet ou a um servidor. Nestes casos o sistema pode tentar reconectar automaticamente após alguns segundos. Isto evita que o utilizador tenha de repetir a operação manualmente.

Padronização

A padronização consiste em utilizar regras e métodos comuns no desenvolvimento de software.

utilização de formatos iguais para mensagens de erro utilização de códigos de erro padronizados utilização das mesmas práticas de logging

Isto facilita a manutenção e a compreensão do código.

Comunidades de Programadores

Comunidades como Stack Overflow, Unity Forums e GitHub são fundamentais:

  • Permitem partilha de soluções
  • Auxiliam na resolução de problemas complexos
  • Contribuem para a evolução de boas práticas

Durante a minha PAP, recorri a estas plataformas para esclarecer dúvidas sobre scripts e configuração de assets.

Estudiosos de Referência

+info

Donald Knuth

Barbara Liskov

Uncle Bob

Robert C. Martin, conhecido como Uncle Bob, é referência em software limpo e defensor dos princípios SOLID.

Enfatizou código legível e documentação clara. Introduziu “programação literária”, onde o código é explicado como um texto.

estudiosa de sistemas seguros e design de software confiável.

Relação com a PAP

Durante o desenvolvimento da minha PAP, tive de lidar com vários erros ao longo do processo, o que me ajudou a perceber melhor a importância do tratamento de erros na programação.

Um dos erros mais comuns que encontrei foi o NullReferenceException no Unity. Este erro acontece quando o programa tenta aceder a um objeto que não foi inicializado ou que não está associado corretamente.

Além deste erro, também tive outros problemas, como:

  • Erros de lógica no código
  • Problemas com dados inválidos
  • Dificuldades na ligação entre diferentes componentes do projeto

Ferramentas usadas para resolver os problemas:

Console do Unity para identificar erros Debug.Log() para rastrear variáveis Inspector para corrigir referências Profiler para analisar desempenho e comportamento ChatGPT&BlackCode

Soluções aplicadas:

Corrigir referências de objetos no Inspector Reorganizar scripts e inicializar variáveis corretamente Validar entradas antes de executar ações Reimportar assets e limpar pastas internas do Unity

Webvgrafia

  • Unity Documentation – https://docs.unity3d.com
  • W3Schools – https://www.w3schools.com
  • https://chatgpt.com/