
Qualquer desenvolvedor usa uma ou outra ferramenta auxiliar. Alguns deles permitem que você acelere o processo, alguns - livrar-se de erros, tornar o código mais compreensível. Existem tais ferramentas em quase todas as áreas de desenvolvimento.
Preston Badeer, um programador Python, compartilhou um conjunto de extensões que, em sua opinião, simplifica e acelera muito a codificação. Por 5 anos de trabalho, ele experimentou muitas ferramentas e identificou três das mais úteis.
Kite: acesso rápido à documentação e preenchimento automático com IA
A maioria dos IDEs tem funcionalidade de preenchimento automático embutida. O processo de trabalhar com eles é assim.

Essas ferramentas usam documentação interna para substituir automaticamente os parâmetros e nomes de funções. Mas e se houvesse uma ferramenta que pudesse ajudá-lo não apenas com nomes de funções, mas também com pedaços de código usados com frequência? Ele também analisou os dados dos repositórios GitHub e ofereceu as dicas necessárias. Existe essa ferramenta. O Kite faz muito, mas a maioria dos recursos importantes podem ser divididos em três grupos.
Dicas inteligentes com tecnologia de IA
Kite aprende a base de código, lembra os nomes das variáveis que os desenvolvedores costumam usar, nomes de parâmetros da Internet e documentação para fornecer recomendações contextuais, por exemplo:

O exemplo mostra como Kite prevê quais variáveis você usará dependendo do contexto do seu código. Aqui está outro exemplo de como as dicas funcionam:
“Passamos muito tempo indexando semanticamente todo o código no GitHub, construindo inferências estatísticas e modelos abrangentes que nos ajudam a usar as informações”, comenta Adam Smith, CEO da Kite.
Manuseio de documentação aprimorado
Se seus colegas nunca lhe enviaram "RTFM" no chat de trabalho, então você é um desenvolvedor que não comete erros. Mas, em qualquer caso, você deve primeiro ler a documentação e, em seguida, perguntar aos colegas sobre um problema ou procurar respostas para perguntas no Stack Overflow. Ler a documentação é uma etapa importante na criação do código do programa. Será mais conveniente com o Kite Copilot, que mostra em tempo real uma descrição dos objetos e funções destacados pelo cursor.

Seu código permanece com você em seu PC local
O Kite foi desenvolvido para uso local e não envia código para a nuvem. A velocidade dos prompts é bastante alta. Isso é importante para quem tem internet lenta ou trabalho relacionado a código fechado / proprietário.
Trabalho com essa ferramenta há vários anos e ela está cada vez melhor. Você pode tentar agora .
Melhorando o código com Mypy
Python é uma linguagem tipada dinamicamente que permite que você faça qualquer variável com qualquer tipo de dados a qualquer momento. Uma e a mesma variável pode ser uma string ou um inteiro ou outro tipo de dados, dependendo do último valor atribuído. Isso acelera o processo de codificação quando o desenvolvedor não precisa atribuir manualmente o tipo de dados às variáveis todas as vezes.
# These two variable types are declared the exact same way
# Python figures out the data type on it's own, dynamically
# string
var_name = "string here"
# integer
var_name = 1234
E aqui está um exemplo de uma linguagem tipada estaticamente, onde cada variável é atribuída a um tipo de dados específico, que deve ser respeitado na lógica:
# Many languages require the data type to be declared too
# string
str var_name = "string here"
# integer
int var_name = 1234
Existem também desvantagens na abordagem dinâmica:
- Ao final do processo de desenvolvimento, o risco de encontrar erros aumenta, então você terá que reescrever algumas partes do código.
- Por causa do cálculo constante de tipos, o código é executado mais lentamente.
- Devido à tipagem dinâmica, o código torna-se inseguro, pois a entrada e a saída da função podem ter diferentes tipos de dados para a mesma variável.
- O código dinâmico é mais difícil de ler porque outro desenvolvedor não pode ter 100% de certeza de que uma variável declarada anteriormente não mudará seu tipo.
A ferramenta gratuita Mypy injeta tipagem estática em seu código. Ele permite que você encontre erros de incompatibilidade de tipo em seu código. Se o valor de uma variável não corresponder ao tipo atribuído, será gerado um erro.
# Declaring a function using normal dynamic typing, without mypy
def iter_primes():
# code here#
Declaring the same function with mypy static typing
from typing import Iterator
def iter_primes() -> Iterator[int]:
# code here
Este é o exemplo mais simples de toda a lista. Se precisar de mais informações, siga o link . Além disso, há um extenso FAQ na documentação do Mypy .
Encontre bugs rapidamente e escreva funções simples com SonarLint
A maioria dos IDEs possui linters, analisadores de erros estáticos. Linter pode encontrar um erro antes mesmo de executar o código. Isso é considerado análise estatística do código.

Mas também existe a análise dinâmica, que executa / compila o código em segundo plano, verificando se funciona corretamente. E se algo der errado, ele reporta um possível erro. É exatamente assim que funciona o projeto gratuito SonarLint .
Código comentado ou não utilizado
Confesso que deixo declarações, código comentado e funções não utilizadas em toda a base de código. O SonarLint avisa sobre esses problemas, mostrando onde está tudo. Sem o SonarLint, a solução de problemas e a depuração podem levar horas. Problemas de
segurança O
SonarLint tem um grande banco de dados de vulnerabilidades atualizável que permite ao plug-in avisar imediatamente o desenvolvedor sobre os problemas encontrados no código.
Legibilidade do código
SonarLint avisa sobre complicar demais o código, explicando o problema. Pode ser, por exemplo, aninhamento demais de instruções if.
Como uma conclusão
Um pequeno resumo, para não esquecer as ferramentas descritas no artigo:
- Escreva código mais rápido e menos no Google com o Kite Copilot e o Editor Plugin .
- Torne seu código estável com o módulo Mypy Python .
- Encontre bugs mais rápido e escreva código legível com o SonarLint Editor Plugin .
Quais ferramentas úteis do Python você usa?
