Conceitos Gerais de Programação

Base para Todo Programador

Compreender os fundamentos é essencial antes de mergulhar em qualquer linguagem de programação.


🗣️ Linguagens Naturais vs Linguagens de Programação

Linguagem Natural vs Programação

Comparativo

AspectoLinguagem NaturalLinguagem de Programação
UsuárioHumanosMáquinas
ExemploPortuguês, InglêsPython, Java
CaracterísticaAmbígua, flexívelPrecisa, formal
FunçãoComunicaçãoInstruções para computador

⚙️ Compilação vs Interpretação

Duas Formas de Tradução

Existem duas formas diferentes de transformar um programa de uma linguagem de alto nível em linguagem de máquina.


🔨 Compilação

Processo de Compilação

Características

AspectoDescrição
ProcessoCódigo fonte traduzido uma vez
ResultadoGera executável específico para plataforma
ResponsávelCompilador ou tradutor
ExemplosC, C++, Go, Rust

🔄 Interpretação

Características

AspectoDescrição
ProcessoCódigo fonte usado a cada execução
ResultadoNão gera executável separado
ResponsávelInterpretador
ExemplosPython, JavaScript, Ruby

Python

O Python é uma linguagem interpretada. Linguagens interpretadas também são chamadas de linguagens de scripting e os códigos são geralmente chamados de scripts.


📊 Comparativo

Vantagens e Desvantagens

Qual é melhor?

Não existe melhor. Se existisse, o outro deixaria de ser utilizado. É uma questão de objetivo do projeto. Ambos têm vantagens e desvantagens.

📺 Linguagem Compilada vs Interpretada | Qual é melhor?


🧪 Exemplo Prático: Compilação vs Interpretação

Linguagem Compilada (C)

1. Criar arquivo C (hello.c):

#include <stdio.h>
 
int main() {
    printf("Hello, World!\n");
    return 0;
}

2. Compilar:

gcc hello.c -o hello

3. Executar:

./hello

Linguagem Interpretada (Python)

1. Criar arquivo Python (hello.py):

print("Olá, mundo!")

2. Executar:

python hello.py

Criando arquivo no Windows (PowerShell)

  1. Abrir o PowerShell
  2. Escolher uma pasta
  3. type nul > arquivo.py
  4. notepad arquivo.py
  5. python3 arquivo.py
  6. Measure-Command {python3 arquivo.py} (mede tempo de execução)

📖 Termos Importantes

Biblioteca

É um conjunto de subprogramas e funções que podem ser reutilizados em programas.

API (Application Programming Interface)

“Interface de Programação de Aplicativos” - parecido com biblioteca, mas focada na integração entre sistemas. Permite utilizar funcionalidades de outros sistemas no seu programa, chamando funções remotas.