Neste post de hoje, quero compartilhar com vocês a experiência sobre o uso da IA para desenvolvimento de código.
Existe uma discussão importante quando falamos se a IA irá ou não substituir alguns profissionais. Em alguns blogs que acompanho, o criador de conteúdo Jacob Moura (Flutterando) reflete que a IA não irá substituir os profissionais, porém irá diminuir o quadro de participantes nos projetos. Para se adequar, os programadores deverão aprender a criar prompts e utilizar a IA para acelerar a criação de códigos.
No meu entendimento, o futuro da programação será para quem domina a documentação. O poder de fazer uma boa documentação, que possa ser entendida pela IA para auxiliar na criação de projetos e na manutenção, é fundamental para se adaptar à nova era.
No livro Documentação IA-Ready Flutter e Dart: Desenvolvimento Assistido por IA, o autor Jacob Moura compartilha sua experiência sobre o desenvolvimento e reforça a importância do conceito AI-Ready. Após a leitura da publicação, realizamos alguns testes com prompts para criação de aplicações, e quero compartilhar um pouco dessa experiência.
Utilizei o prompt abaixo para solicitar à IA a criação de um aplicativo Flutter. Um prompt bem detalhado traz mais riqueza e eficiência para a IA criar a aplicação. No entanto, neste primeiro momento, utilizamos um prompt simples:
Prompt original
Criar aplicativo Flutter, consumindo uma API do CMS WordPress, utilizando gerenciamento de estado Provider.
O aplicativo deve listar, na página principal, os últimos posts publicados.
No menu, deve ser carregado todas as categorias existentes. Ao clicar na categoria, deve ser carregado todos os posts referentes à categoria. Na parte superior, deve conter o botão “Voltar” para a página inicial do aplicativo.
Na apresentação dos posts, deve-se seguir a seguinte ordem: título, imagem de destaque, excerpt e botão com o texto “Leia Mais”.
Ao clicar no título ou no botão “Leia Mais”, deve ser apresentada uma página com o conteúdo do post e botão, na parte superior, para retornar à página de início.
No carregamento da imagem, deve ser utilizado um efeito de carregamento enquanto a imagem não carrega por completo.
Após o envio do prompt, obtivemos a seguinte estrutura de projeto:
Estrutura gerada pela IA:
cssCopiarEditarlib/
├── main.dart
├── models/
│ ├── post.dart
│ └── category.dart
├── services/
│ └── api_service.dart
├── providers/
│ ├── post_provider.dart
│ └── category_provider.dart
├── views/
│ ├── home_page.dart
│ ├── category_page.dart
│ └── post_detail_page.dart
└── widgets/
├── post_card.dart
└── shimmer_image.dart
Podemos observar que a estrutura do projeto foi organizada de forma clara e funcional, seguindo boas práticas de desenvolvimento Flutter, o que facilita a manutenção, a escalabilidade e o entendimento por parte de outros desenvolvedores.
Criamos o projeto appteste para replicar o código criado pela IA. Todos os arquivos foram copiados e colados, e ao final, após a declaração das dependências no arquivo pubspec.yaml
, o projeto não gerou erros de importação ou declaração.
Alteramos o arquivo api_service.dart
para informar qual site seria o consumidor, e os dados foram carregados com sucesso.
A aplicação apresentou erro no carregamento da imagem, conforme podemos observar no vídeo. Porém, isso pode ter ocorrido por diversos fatores aos quais devemos nos atentar. Um ponto importante é que em nenhum momento foi passado para a IA o retorno da API.
Mesmo assim, podemos observar que nossa aplicação carregou corretamente, listou suas categorias e, a partir deste ponto, podemos aperfeiçoar ainda mais o código.
No meu primeiro projeto com Flutter, demorei aproximadamente duas semanas para criar toda a estrutura e conseguir carregar os dados com sucesso. Com a ajuda da IA, essa curva de aprendizado foi drasticamente reduzida, levando apenas alguns minutos para digitar um prompt e obter uma base funcional. No entanto, para aproveitar melhor o potencial da IA e realmente aprender, já que copiar e colar não resolve todos os problemas que podem surgir, é fundamental utilizá-la como uma ferramenta de apoio didático. Peça explicações sobre cada trecho de código e sobre a estrutura gerada. Dessa forma, é possível acelerar o desenvolvimento e, ao mesmo tempo, aprimorar o conhecimento técnico.
Esté conteudo foi criado e posteriormente revisar pela IA.