DEV Community

Edson Costa for Devs Norte

Posted on

5 4 4 3 4

Dominando os Desafios da Programação: Um Guia para os Erros Léxicos, Sintáticos e Semânticos

Na jornada rumo à excelência na programação, enfrentamos uma série de desafios que testam nossa habilidade e perseverança. Entre estes desafios, destacam-se os erros léxicos, sintáticos e semânticos - obstáculos que podem comprometer a integridade e eficácia do código. Neste guia, vamos explorar esses erros em detalhes e discutir estratégias para identificá-los e corrigi-los de forma eficaz.

Erros Léxicos: Precisão na Linguagem da Programação

Os erros léxicos são como imperfeições na gramática de um idioma - pequenas discrepâncias que podem alterar completamente o significado de uma sentença. Na programação, essas imperfeições se manifestam quando palavras-chave são mal escritas ou símbolos são utilizados de forma inadequada. Considere o seguinte exemplo:

If x == 5:       # A primeira letra de "if" deveria estar minúscula
    print("Hello World")
Enter fullscreen mode Exit fullscreen mode

Neste código, o erro léxico reside na letra maiúscula em "If", que deveria ser "if".

Erros Sintáticos: A Importância da Estruturação Correta

A sintaxe é a estrutura que define a gramática de uma linguagem de programação. Erros sintáticos ocorrem quando essa estruturação é violada, resultando em código que não pode ser interpretado corretamente pelo compilador ou interpretador. Considere o seguinte exemplo:

print "Erro de sintaxe")  # Esqueceu de colocar os parênteses para a função print
Enter fullscreen mode Exit fullscreen mode

A ausência do ponto e vírgula no final da linha resulta em um erro sintático.

Erros Semânticos: Alinhando Intenção e Resultado

Embora o código possa estar gramaticalmente correto, ainda pode falhar em cumprir sua intenção original devido a erros semânticos. Esses erros ocorrem quando há uma discrepância entre a interpretação do programador e o comportamento real do programa. Considere o seguinte exemplo:

def media(lista):
    soma = 0
    for num in lista:
        soma += num
    return soma / len(lista)

lista = []
media(lista)     # Vai gerar uma exceção por tentar dividir por zero
Enter fullscreen mode Exit fullscreen mode

A tentativa de calcular a média de uma lista vazia resulta em uma divisão por zero, um erro semântico.

Conclusão: Navegando com Precisão no Oceano da Programação

Identificar e corrigir erros em programação é uma habilidade essencial para qualquer desenvolvedor. Os erros léxicos, sintáticos e semânticos representam desafios significativos, mas compreendê-los nos capacita a enfrentá-los com confiança e eficácia. Que este guia sirva como uma ferramenta valiosa em sua jornada de desenvolvimento, ajudando-o a navegar com precisão no vasto oceano da programação.

Image of Timescale

Timescale – the developer's data platform for modern apps, built on PostgreSQL

Timescale Cloud is PostgreSQL optimized for speed, scale, and performance. Over 3 million IoT, AI, crypto, and dev tool apps are powered by Timescale. Try it free today! No credit card required.

Try free

Top comments (1)

Collapse
 
sc0v0ne profile image
sc0v0ne

Muito bom, parabéns pelo post ficou muito explicado. Pegando o final: "habilidade essencial para qualquer desenvolvedor". Isso e realmente essencial, compreender o problema criado seja por sintaxe, semânticos e entre outros. Vai polpar tempo para desenvolvimento, porque vai evitar você de ir na web procurar erros simples, sendo possível solucionar compreendendo o básico da linguagem e interpretar saídas de erros do terminal.

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay