🚀 Capítulo 13: O Poder do Pip e Poetry

NOTE

Este capítulo utiliza a temática de Transformers para explicar o gerenciamento de pacotes em Python usando o Pip. Aprenda a instalar superpoderes no seu projeto!


🎯 Objetivo da Aula

Compreender como instalar e gerenciar bibliotecas externas em Python usando o comando pip, entender o arquivo requirements.txt e conhecer o conceito de ambientes virtuais.

🏢 O Cenário Prático (Seu Desafio)

Os Autobots são robôs alienígenas que conseguem se transformar em carros. Mas para enfrentar os Decepticons, eles precisam de atualizações: armas mais fortes, escudos de energia ou radares avançados. Em vez de fabricarem tudo do zero, eles baixam essas atualizações de um banco de dados central e as instalam em seus corpos!

No Python, o seu computador já vem com muitas funções básicas. Mas para criar sites, APIs ou inteligência artificial, precisamos de pacotes (bibliotecas) criados por outras pessoas.

  • O Pip é o nosso instalador de atualizações!
  • Seu desafio é aprender a instalar esses pacotes e gerenciar as dependências do seu projeto!

🧠 Fundamentos: A Teoria Traduzida

📦 1. O que é o Pip?

É o gerenciador de pacotes padrão do Python. Ele busca as bibliotecas na internet (no site PyPI) e instala no seu computador. Para instalar um pacote, você usa o terminal:

pip install nome_do_pacote

📄 2. O arquivo requirements.txt:

Quando você trabalha em equipe, precisa dizer quais pacotes o seu projeto usa para que os outros programadores possam instalar também. Nós guardamos essa lista em um arquivo de texto chamado requirements.txt. Para instalar tudo o que está na lista de uma vez:

pip install -r requirements.txt

📖 Exemplo Guiado: Instalando o FastAPI

Para começar o nosso projeto web nos próximos capítulos, vamos precisar do pacote fastapi. Para instalá-lo no terminal, digitamos:

pip install fastapi

O Pip vai baixar o FastAPI e todas as outras pequenas bibliotecas que ele precisa para funcionar!


🛠️ Prática Obrigatória 1: O Comando de Instalação

  1. Escreva o comando do terminal que você usaria para instalar a biblioteca requests (usada para acessar sites) usando o Pip.

🛠️ Prática Obrigatória 2: Listando Pacotes

  1. Qual é o comando do terminal que usamos para gerar a lista de todos os pacotes instalados no computador e salvar no arquivo requirements.txt? (Dica: usa a palavra freeze).

📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

Neste curso, você entregará suas atividades enviando o código para o seu repositório no GitHub usando o aplicativo GitHub Desktop. Siga o passo a passo detalhado:

  1. Verifique a estrutura: Certifique-se de que sua estrutura de pastas final está idêntica à mostrada abaixo.
  2. Abra o GitHub Desktop: Certifique-se de que o repositório do seu curso está selecionado no canto superior esquerdo.
  3. Visualize as alterações: Na aba Changes (à esquerda), você verá todos os arquivos que criou ou modificou nesta aula.
  4. Faça o Commit:
    • No campo Summary (na parte inferior esquerda), digite uma mensagem curta descrevendo o que fez, ex: Finaliza atividades do Capítulo.
    • Clique no botão azul Commit to main (ou o nome da sua branch).
  5. Envie para a Nuvem (Push): No topo da tela, clique no botão Push origin. Isso enviará seu código do seu computador para o seu perfil no GitHub.
  6. ⚠️ IMPORTANTE (Repositório Público): Para que o professor consiga corrigir, o seu repositório no GitHub DEVE SER PÚBLICO. Repositórios privados não podem ser visualizados por quem não foi convidado.
  7. Como entregar no Microsoft Teams:
    • Copie o link do seu repositório no GitHub (ex: https://github.com/seu-usuario/seu-repositorio).
    • Abra a tarefa correspondente no Microsoft Teams.
    • Clique no botão Adicionar trabalho (ou Add work).
    • Selecione a opção Link no menu lateral.
    • Cole o link do GitHub no campo “Endereço Web” e digite um texto (ex: Meu Repositório) no campo “Texto a ser exibido”.
    • Clique em Anexar.
    • MUITO IMPORTANTE: Clique no botão Entregar (ou Turn in) no canto superior direito para concluir o envio!

📂 Estrutura de Pastas

spec_backend_com_python_e_fastapi/
├── capitulos/
│   └── capitulo_13_transformers.md

💡 Checkpoint de Lógica

Ambientes Virtuais (Venv): É uma boa prática criar um ambiente isolado para cada projeto Python. Assim, os pacotes de um projeto não se misturam com os de outro! Você cria com python -m venv venv.

🔥 Desafio de Fixação (Opcional)

Pesquise sobre o Poetry, uma ferramenta moderna que muitos programadores usam hoje em dia no lugar do Pip para gerenciar pacotes de forma mais organizada.

🔑 Gabarito de Código/Fórmulas

Gabarito da Prática 1:

pip install requests

Gabarito da Prática 2:

  1. Usamos o comando: pip freeze > requirements.txt.

Capitulo Anterior | Proximo Capitulo