Phpstorm logo

PhpStorm

The IDE that empowers PHP developers

Tutorials

IA para PHP: como fazer com que o AI Assistant gere implementações de testes

Read this post in other languages:

Começamos esta série analisando como o JetBrains AI Assistant pode gerar testes a partir de uma implementação existente. Mas, e se quisermos usar o AI Assistant ao contrário? E se quisermos adotar uma abordagem de desenvolvimento mais orientada a testes, escrevendo nossos testes primeiro e fazendo com que o AI Assistant gere uma implementação para nós?

Vamos dar uma olhada em como podemos fazer isso.

Gerar código com o chat do AI Assistant

A primeira etapa para gerar uma implementação é ter um teste. Vamos supor que estamos construindo um barramento de comando e temos o seguinte teste:

Não escrevemos mais nada – ainda não existe uma classe CommandBus, muito menos uma implementação para os métodos handle e getHistory. Vamos usar o AI Assistant para gerar a implementação para nós. Para começar, abra o menu AI Actions selecionando o texto e pressionando Alt+Enter / ⌥Enter. Em seguida, escolha New Chat Using Selection:

O PhpStorm abrirá a janela de chat do AI Assistant. Aqui, você pode conversar com o AI Assistant e perguntar o que quiser. O snippet de código que você selecionou já estará presente na janela de chat, então vamos dar um prompt simples – “write an implementation for this test” (escreva uma implementação para este teste):

Em alguns segundos, o AI Assistant terá a implementação pronta:

Vamos copiar esse código em um arquivo e executar nosso teste para ver o que acontece:

Funciona! O AI Assistant escreveu uma implementação funcional para nosso teste. Percorrendo o código, parece uma implementação sólida, embora iremos alterar alguns detalhes estilísticos. Nosso objetivo com o AI Assistant ao longo desta série não foi fazer com que o AI Assistant escrevesse o código perfeito para nós, mas gerar aquele código básico chato que podemos usar como ponto de partida, economizando um tempo valioso. Foi exatamente isso que o AI Assistant fez!

E se quisermos usar esse prompt várias vezes? Existe uma maneira de reutilizá-lo?

É claro que sim!

Salvando prompts personalizados

Abra o menu AI Actions pressionando Alt+Enter / ⌥Enter em algum lugar do seu código. Em vez de escolher um item de menu existente, clique no link Add Your Prompts na parte inferior:

O PhpStorm permite escrever prompts personalizados e salvá-los como ações personalizadas de IA, que é o que queremos fazer neste caso. Dentro desses prompts, você pode usar a variável $SELECTION, que conterá qualquer código que você selecionou, ao invocar seu prompt personalizado.

Vamos escrever um prompt para nosso caso de uso: criar a implementação para um teste selecionado:

Vamos experimentar! Selecione o teste novamente, pressione Alt+Enter / ⌥Enter para abrir o menu AI Actions , e você verá como a ação Write Implementation personalizada já está disponível!

Selecione a ação, e você verá que o PhpStorm escreve imediatamente a mensagem correta no AI Assistant, tornando nossa ação assistida por IA reutilizável!

Conclusão

Ao longo desta série, nós vimos vários exemplos de como podemos usar o AI Assistant em nosso benefício. Não esperamos que ele escreva um código perfeito, mas o usamos para gerar o código básico que podemos usar como ponto de partida. É interessante ver o quão preciso o AI Assistant é ao escrever códigos que funcionam, e estou ansioso para ver ele melhorar ainda mais nos próximos lançamentos.

Pessoalmente, não acho que a IA substituirá os programadores reais tão cedo, mas acho que é uma ótima ferramenta que pode ajudar a acelerar o processo de escrita de código, especialmente as partes rotineiras, para que possamos nos concentrar nas partes do nosso código que mais importam.

Quais são suas expectativas em relação à IA para ajudá-lo em seu trabalho? Compartilhe sua opinião nos comentários!

Links úteis

Gostou de ler este post do nosso blog? Aqui estão mais posts desta série:

Recursos:

Vídeos:


Artigo original em inglês por:

image description

Discover more