- O professor comentou sobre isso na aula, mas pra mim não ficou claro quais são as diferenças?
- A tipagem é restrita de cada linguagem, tipo, Python sempre vai ser "A" e não "B?"
- Existem algum tipo de vantagem de uma sobre a outra?
Olá Ygor! Tudo bem?
A diferença entre uma linguagem de programação estática e dinâmica está relacionada à tipagem das variáveis. Em uma linguagem estática, como o C, é necessário declarar o tipo da variável no momento da sua criação e esse tipo não pode ser alterado posteriormente. Já em uma linguagem dinâmica, como o Python, o tipo da variável é determinado pelo valor que ela recebe, podendo ser alterado ao longo do programa.
Por exemplo, em Python, podemos ter uma variável que inicialmente armazena um número inteiro e depois armazena uma string. Já em C, é necessário declarar duas variáveis separadas, uma para o número inteiro e outra para a string.
Quanto à sua pergunta sobre a tipagem ser restrita de cada linguagem, é importante lembrar que cada linguagem possui suas próprias regras de tipagem. No caso do Python, por exemplo, ele é uma linguagem de tipagem forte, o que significa que não é possível realizar operações entre tipos diferentes sem fazer uma conversão explícita. Já em C, que também é uma linguagem de tipagem forte, é possível fazer operações entre tipos diferentes, mas o resultado pode não ser o esperado.
Sobre as vantagens de uma linguagem sobre a outra, depende do contexto e das necessidades do projeto. O Python, por exemplo, é conhecido por ser uma linguagem de alto nível, com uma sintaxe simples e fácil de aprender, o que a torna mais produtiva para o desenvolvimento rápido de aplicações. Já o C é uma linguagem de baixo nível, mais próxima do hardware, o que a torna mais eficiente em termos de desempenho.
Espero ter ajudado a esclarecer suas dúvidas!
Em caso de dúvidas, me coloco à disposição.
Grande abraço e bons estudos!