Computação Flashcards
Qual a diferença de uma linguagem de programação de baixo nível e de alto nível?
A de alto nível são mais próximas da linguagem humana, as de baixo são mais proximas da linguagem das máquinas.
Qual a diferença entre linguagem compilada e interpretada?
Na compilada o código é transformado por um compilador para linguagem de máquina.
Já na interpretada o código é interpretado em tempo de execução agindo como um intermediário entre o código e a máquina.
Qual a diferença entre “Source Code” (Código Fonte) e “Machine Code” (Código de Máquina)?
Source code é o feito pelos desenvolvedores, o código de máquina é o código transformado (compilado ou interpretado) para linguagem de máquina.
Qual a diferença entre uma linguagem de tipagem dinamica e estatica ? Além disso o que seria uma linguagem fortemente tipada vs fracamente tipada?
Na tipagem estática, o tipo é inferido pela variável e a checagem (type checking) é feita durante a compilação, além disso é necessário informar explicitamente o tipo de cada dado utilizado no sistema
Na tipagem dinâmica, o tipo é inferido pelo valor do dado e a checagem (type checking) é feita em tempo de execução (runtime) pelo interpretador;
Fortemente tipada: São aquelas em que todas as variáveis tem um tipo específico e seus tipos são importantes para as operações da linguagem.
Fracamente tipada:
São aquelas que não se importam com o tipo de dados contido em uma variável. Permitem que o programador não tenha de fazer conversões de tipos (cast) o interpretador faz uso de conversões implícitas.
Exemplos de linguagens com tipagem dinâmica e forte: Python, Ruby, Erlang, Clojure
Exemplos de linguagens com tipagem dinâmica e fraca (usa conversões implícitas): JavaScript, PHP, Perl
Exemplos de linguagens com tipagem estática e forte: C#, Java, Scala
Exemplos de linguagens com tipagem estática e fraca: C, C+