1
resposta

Conversando Sobre "Json" e "Python" - PARTE III

Desafios Intermediários

  1. Consumo de APIs REST
    • Objetivo: Consumir uma API pública que retorne dados em formato JSON e extrair informações específicas.
  • Tarefas:
    • Utilize a biblioteca requests para fazer uma requisição GET a uma API (por exemplo, API de clima ou de informações financeiras).

    • Analise a resposta JSON, extraia dados como temperatura, cidade, etc., e exiba-os de forma organizada.

    • Trate erros, como falhas na requisição ou dados inconsistentes.

    • Benefícios: Desenvolve habilidades de integração web e análise de dados, contribuindo para a compreensão de como sistemas se comunicam por meio do JSON.

  1. Conversão de CSV para JSON
  • Objetivo: Transformar dados de um arquivo CSV para um arquivo JSON estruturado.

  • Tarefas:

    • Use a biblioteca csv ou pandas para ler os dados de um CSV.
    • Construa uma estrutura de dados (por exemplo, uma lista de dicionários) que represente esses dados.
    • Exporte os dados para um arquivo JSON.
  • Benefícios: Combina diferentes fontes e formatos de dados e ensina a transformar e normalizar informações.

Desafios Avançados

  1. Construindo uma API com Flask

    • Objetivo: Criar uma aplicação web simples que receba e responda em JSON.

    • Tarefas:

      • Implemente um servidor Flask com ao menos um endpoint que receba dados via POST.
      • Faça a validação dos dados recebidos e devolva uma resposta estruturada em JSON usando jsonify().
      • Teste com ferramentas como o Postman ou cURL.
    • Benefícios: Integra conceitos de backend, manipulação de JSON e desenvolvimento de APIs, demonstrando a interação entre cliente e servidor.

  2. Ferramenta de Configuração e Monitoramento

    • Objetivo: Desenvolver um script Python que utilize um arquivo JSON como base de configuração para alterar comportamentos do programa.

    • Tarefas:

      • Crie um arquivo JSON de configuração com parâmetros (como modos de operação, taxas de atualização, etc.).
      • Seu script deverá ler essas configurações e executar ações baseadas nelas.
      • Ao final da execução ou periodicamente, o script poderá atualizar o JSON (por exemplo, registrando logs ou status).
    • Benefícios: Aprofunda o entendimento sobre a leitura, modificação e persistência de dados em JSON dentro de uma aplicação dinâmica.

  3. Manipulação Complexa de Estruturas de Dados

    • Objetivo: Trabalhar com JSON aninhado e realizar buscas ou modificações em profundidade.

    • Tarefas:

      • Utilize um JSON com múltiplos níveis de aninhamento, como um catálogo de produtos com categorias e subcategorias.
      • Implemente funções que, dado um critério (por exemplo, o nome de um produto ou uma categoria), localizem e atualizem informações específicas.
    • Benefícios: Este exercício fortalece a compreensão de estruturas de dados complexas e o uso recursivo ou iterativo para navegar em objetos aninhados.

1 resposta

Dicas Extras para o Desenvolvimento dos Desafios

  • Validação com JSON Schema: Experimente utilizar a biblioteca jsonschema para validar suas estruturas JSON contra um schema predefinido. Essa prática vai aprimorar a robustez dos seus aplicativos.

  • Unindo Notebooks e Projetos: Crie um Jupyter Notebook para documentar e testar seus desafios. Isso auxilia no aprendizado interativo e na visualização dos dados em tempo real.

  • Automatização de Testes: Para os desafios que envolvem mudanças em arquivos, implemente testes unitários com bibliotecas como pytest ou unittest para garantir que as funções se comportem conforme esperado.

  • Exploração de Erros: Não hesite em provocar erros propositalmente (por exemplo, passando JSON mal formatados) para ver como o seu programa responde e aprender a tratar exceções de maneira eficaz.

Para apresentar trechos de código, como JSON ou Python, em um documento do Word, o ideal é usar uma fonte monoespaçada, já que ela preserva a indentação e o alinhamento dos caracteres, fundamentais para a legibilidade do código.

Recomendações para trechos de código

  • Fontes Sugeridas:

    • Consolas: Extremamente popular em ambientes de desenvolvimento no Windows, com boa legibilidade.
    • Courier New: Clássica e amplamente utilizada, garantindo que cada caractere ocupe a mesma largura.
    • Lucida Console: Outra boa opção que pode facilitar a leitura de código.
  • Tamanho da Fonte:

    • Tamanhos entre 10 pt e 11 pt costumam funcionar bem em trechos de código.
    • O tamanho exato pode variar conforme o design do documento e seu público; se o ambiente for digital ou impresso, vale a pena testar para garantir a legibilidade.

Recomendações para texto corrido

  • Se o documento também incluir textos explicativos ou narrativas (fora dos blocos de código), o uso de fontes tradicionais como:
    • Times New Roman: Geralmente usado em contextos mais formais, com tamanho 12 pt.
    • Calibri: Moderno e limpo, costuma ser configurado em 11 pt por padrão em muitos templates do Office.

Dicas Gerais

  • Diferenciação Visual:

    • Utilize estilos ou caixas de texto para separar os blocos de código do restante do conteúdo.
    • Considere a aplicação de uma cor de fundo ou borda nos blocos de código para realçá-los.
  • Consistência:

    • Mantenha a mesma fonte e formatação para todos os trechos de código ao longo do documento para criar um padrão visual que facilite a leitura.
  • Testes e Ajustes:

    • Sempre revise seu documento em diferentes dispositivos (tela, impressão) para verificar se o tamanho e o tipo da fonte escolhidos oferecem a melhor experiência ao leitor.