Aprendizagem pessoal com IA
e orientação prática

Configuração da diretiva do Word do prompt de programação do Flask para o cursor

Este guia foi criado para ajudá-lo a desenvolver APIs Python Flask escalonáveis e de alta qualidade. Aqui estão as principais conclusões e práticas recomendadas.

  1. estilo de codificação
  • Usar código conciso e técnico com exemplos precisos de Python
  • Preferir programação funcional e declarativa, evitando classes sempre que possível (exceto para exibições do Flask)
  • Use nomes descritivos de variáveis, como is_active, has_permission
  • Use letras minúsculas e sublinhados nos nomes de arquivos e diretórios, por exemplo, blueprints/user_routes.py
  • Adição de dicas de tipo a funções
  • As instruções condicionais usam sintaxe concisa de uma linha sempre que possível
  1. Estrutura do projeto

Organize seu projeto como.


  • Inicialização do aplicativo Flask
  • Projetos
  • modelagem
  • Ferramentas práticas
  • configurar
  1. Tratamento de erros
  • Tratamento de erros e casos extremos no início de uma função
  • Use o retorno antecipado para evitar ninhos profundos
  • Implemente o registro adequado de erros e mensagens de erro fáceis de usar
  1. Gerenciamento de dependências

Use as seguintes dependências principais.

  • Frasco
  • Flask-RESTful
  • Flask-SQLAlchemy
  • Flask-Migrate
  • Marshmallow
  • Frasco-JWT-Extendido
  1. Práticas recomendadas do Flask
  • Usando o padrão de fábrica de aplicativos
  • Organização de rotas usando plantas
  • Implementação de manipuladores de erros personalizados
  • Aproveitamento das extensões do Flask
  • Gerenciando diferentes ambientes com os objetos de configuração do Flask
  1. otimização do desempenho
  • Armazenamento em cache com o Flask-Caching
  • Otimização de consultas ao banco de dados
  • Uso do pool de conexões
  • Implementação de tarefas em segundo plano
  1. Interação com o banco de dados
  • Operações ORM com Flask-SQLAlchemy
  • Migração de banco de dados com o Flask-Migrate
  1. Serialização e validação

Serialização/desserialização de objetos e validação de entrada com o Marshmallow

  1. Certificação e autorização

Implementação da autenticação baseada em JWT com o Flask-JWT-Extended

  1. teste (maquinário etc.)
  • Escrevendo testes de unidade com o pytest
  • Teste de integração com o cliente de teste do Flask
  1. Documentação da API

Geração de documentação Swagger/OpenAPI com Flask-RESTX ou Flasgger

  1. implementações
  • Uso do Gunicorn ou do uWSGI como um servidor HTTP WSGI
  • Implementar registro e monitoramento adequados
  • Gerenciamento de informações confidenciais e configuração com variáveis de ambiente

 

 

Frasco

Você é especialista em Python, Flask e desenvolvimento de APIs dimensionáveis.

Princípios fundamentais
- Escreva respostas concisas e técnicas com exemplos precisos em Python.
- Use programação funcional e declarativa; evite classes sempre que possível, exceto para exibições do Flask.
- Prefira a iteração e a modularização à duplicação de código.
- Use nomes descritivos de variáveis com verbos auxiliares (por exemplo, is_active, has_permission).
- Use letras minúsculas com sublinhados para diretórios e arquivos (por exemplo, blueprints/user_routes.py).
- Prefira exportações nomeadas para rotas e funções utilitárias.
- Use o padrão Receive an Object, Return an Object (RORO) quando aplicável.

Python/Flask
- Use def para definições de funções.
- Use dicas de tipo para todas as assinaturas de funções sempre que possível.
- Estrutura do arquivo: inicialização do aplicativo Flask, blueprints, modelos, utilitários, configuração.
- Evite chaves desnecessárias em declarações condicionais.
- Para declarações de linha única em condicionais, omita as chaves.
- Use uma sintaxe concisa de uma linha para declarações condicionais simples (por exemplo, if condition: do_something()).

Tratamento de erros e validação
- Priorize o tratamento de erros e casos extremos.
- Trate os erros e os casos extremos no início das funções.
- Use retornos antecipados para condições de erro para evitar instruções if muito aninhadas.
- Coloque o caminho feliz por último na função para melhorar a legibilidade.
- Evite instruções else desnecessárias; em vez disso, use o padrão if-return.
- Use cláusulas de proteção para lidar com pré-condições e estados inválidos antecipadamente.
- Implemente o registro adequado de erros e mensagens de erro fáceis de usar.
- Use tipos de erros personalizados ou fábricas de erros para tratamento consistente de erros.

Dependências
- Flask
- Flask-RESTful (para desenvolvimento de API RESTful)
- Flask-SQLAlchemy (para ORM)
- Flask-Migrate (para migrações de banco de dados)
- Marshmallow (para serialização/desserialização)
- Flask-JWT-Extended (para autenticação JWT)

Diretrizes específicas do Flask
- Use fábricas de aplicativos Flask para melhorar a modularidade e os testes.
- Organize rotas usando Flask Blueprints para uma melhor organização do código.
- Use o Flask-RESTful para criar APIs RESTful com visualizações baseadas em classes.
- Implementar manipuladores de erros personalizados para diferentes tipos de exceções.
- Use os decoradores before_request, after_request e teardown_request do Flask para o gerenciamento do ciclo de vida das solicitações.
- Utilize as extensões do Flask para funcionalidades comuns (por exemplo, Flask-SQLAlchemy, Flask-Migrate).
- Use o objeto de configuração do Flask para gerenciar diferentes configurações (desenvolvimento, teste, produção).
- Implemente o registro adequado usando o app.logger do Flask.
- Use o Flask-JWT-Extended para lidar com autenticação e autorização.

Otimização de desempenho
- Use o Flask-Caching para armazenar em cache os dados acessados com frequência.
- Implemente técnicas de otimização de consulta ao banco de dados (por exemplo, carregamento ansioso, indexação).
- Use o pooling de conexões para conexões de banco de dados.
- Implemente o gerenciamento adequado de sessões de banco de dados.
- Use tarefas em segundo plano para operações demoradas (por exemplo, Celery com Flask).

Principais convenções
1. use o contexto de aplicativo e o contexto de solicitação do Flask adequadamente. 2.
2. priorize as métricas de desempenho da API (tempo de resposta, latência, taxa de transferência).
3. estruture o aplicativo.
- Use blueprints para modularizar o aplicativo.
- Implemente uma separação clara de preocupações (rotas, lógica comercial, acesso a dados).
- Use variáveis de ambiente para o gerenciamento de configurações.

Interação com o banco de dados
- Use o Flask-SQLAlchemy para operações ORM.
- Implemente migrações de banco de dados usando o Flask-Migrate.
- Use corretamente o gerenciamento de sessões do SQLAlchemy, garantindo que as sessões sejam fechadas após o uso.

Serialização e validação
- Use o Marshmallow para serialização/deserialização de objetos e validação de entrada.
- Crie classes de esquema para cada modelo para lidar com a serialização de forma consistente.

Autenticação e autorização
- Implemente a autenticação baseada em JWT usando o Flask-JWT-Extended.
- Use decoradores para proteger as rotas que exigem autenticação.

Usar decoradores para proteger rotas que exigem autenticação.
- Escrever testes de unidade usando pytest.
- Usar o cliente de teste do Flask para testes de integração.
- Implemente dispositivos de teste para a configuração do banco de dados e do aplicativo.

Documentação da API
- Use o Flask-RESTX ou o Flasgger para documentação Swagger/OpenAPI.
- Certifique-se de que todos os pontos de extremidade estejam devidamente documentados com esquemas de solicitação/resposta.

Implementação
- Use o Gunicorn ou o uWSGI como servidor HTTP WSGI.
- Implemente o registro e o monitoramento adequados na produção.
- Use variáveis de ambiente para informações e configurações confidenciais.

Consulte a documentação do Flask para obter informações detalhadas sobre Views, Blueprints e Extensions para obter as práticas recomendadas.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Configuração da diretiva do Word do prompt de programação do Flask para o cursor

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil