INTELIGÊNCIA ARTIFICIAL (IA) – ANÁLISE E PRODUÇÃO DE CÓDIGO INFORMÁTICO
- Inteligência Artificial, inteligência artificial, New, PRO
- 0 (Registered)
A formação Inteligência Artificial (IA) – Análise e Produção de Código Informático destina‑se a desenvolvedores e gestores de projeto que pretendem compreender e aplicar os contributos da IA ao longo do ciclo de desenvolvimento de software. Ao longo de 2 dias (14 horas), os participantes exploram ferramentas de referência para análise de código, geração automática e apoio ao desenvolvimento, como Pylint, Pycodestyle, CodeQL, GitHub Copilot, AlphaCode e OpenAI Codex. A formação aborda ainda os benefícios, limites e riscos da utilização de IA no código (segurança, aspetos jurídicos e controlo humano), permitindo escolher as ferramentas mais adequadas a cada projeto e utilizá‑las de forma crítica e eficaz.
- Explicar quais são os contributos da Inteligência Artificial no processo de desenvolvimento
- Reconhecer as principais ferramentas disponíveis
- Aplicar a escolha mais adequada em função do projeto
Contributos da IA
• Intervenções em várias etapas do processo de desenvolvimento
Verificação da qualidade do código
• Análise de código para gerar documentação
• Deteção de erros
• Deteção de falhas de segurança
• Verificação da sintaxe
• Verificação das regras de desenvolvimento
• Gestão de código-fonte
• Geração de testes automatizados
• Utilização de modelos de aprendizagem automática
• Propostas de módulos de código
• Preenchimento automático
• Geração de código completo
• Vantagens
• Apoio aos programadores
• Ganhos de tempo
• Controlo exaustivo
• Melhor documentação
• Algumas ferramentas de referência
• Ferramentas de análise de código: Pylint, Checkstyle, Pycodestyle, Black, CodeQL
• Ferramentas de preenchimento automático: Tabnine, Kite
• Ferramentas de geração de código: Alphacode, GitHub Copilot, Codex
Pycodestyle
• Verificação do respeito pelas convenções de escrita PEP8 (Python Enhancement Proposal 8)
• Arquitetura modular e ferramenta leve
• Integração com os principais IDE (VS Code, PyCharm, Jupyter Notebook)
• Retorno direto de erros durante a edição do código
• Configuração em modo utilizador ou projeto
Exemplos de exercícios práticos
• Instalação do Pycodestyle
• Implementação num programa simples
• Visualização de erros num código-fonte
• Integração no Jupyter Notebook
Pylint
• Verificação do respeito pela PEP8
• Deteção de erros de programação
• Apoio ao refactoring
• Configuração das prioridades do utilizador
• Integração contínua
• Integração com os principais editores e IDE
Exemplos de exercícios práticos
• Instalação do Pylint
• Configuração da deteção de erros
• Desativação de verificações de regras de escrita e refactoring
• Testes em programas característicos
CodeQL
• Pesquisa de falhas de segurança em código
• Funcionamento:
• Geração de uma base de dados a partir do código
• Execução de consultas para detetar falhas
• Linguagens suportadas e arquitetura
• Execução local com CodeQL‑CLI ou via GitHub
• Princípio de integração contínua
Exemplos de exercícios práticos
• Implementação do CodeQL para Python
• Escrita de consultas básicas
• Utilização da biblioteca CodeQL library for Python
AlphaCode
• Apresentação do projeto Google DeepMind
• Princípio de funcionamento
• Resultados obtidos no CodeForces
Copilot
• Apresentação do projeto GitHub Copilot alimentado por OpenAI Codex
• Função: assistente virtual de programação
• Sugestões de linhas completas de código ou funções completas
• Linguagens suportadas
Exemplos de exercícios práticos
• Demonstração no GitHub da utilização do Copilot
Codex
• Project
• OpenAI Codex
• Modulo do Project Open AI
• Produção de código informático a partir de pedidos em linguagem natural
• Recursos disponíveis
• Bibliotecas de código online
• Hackathons
• Bibliotecas Python
Exemplos de exercícios práticos
• Demonstração com OpenAI Codex
• Geração de código Python a partir de um caderno de encargos simples
• Testes e melhoria do código através de interface em linguagem natural
Limites e riscos
• Necessidade de uma nova organização das tarefas dos programadores
• Definição do problema a resolver, das restrições e dos conjuntos de testes
• Potenciais riscos de segurança
• Riscos jurídicos
• Origem das soluções utilizadas
• Propriedade do código
• Erros
• Na compreensão
• Na análise do problema a ser resolvido
Importância dos controlos humanos a implementar
O conteúdo deste programa pode ser objeto de adaptação em função dos níveis, pré-requisitos e necessidades dos participantes.
Facilitador que combina know-how com experiência empresarial e competências pedagógicas, para dar resposta a necessidades operacionais e potenciar a aprendizagem.
Objetivos da formação
- Explicar quais são os contributos da Inteligência Artificial no processo de desenvolvimento
- Reconhecer as principais ferramentas disponíveis
- Aplicar a escolha mais adequada em função do projeto
Duração da formação
Programa da formação
Contributos da IA
• Intervenções em várias etapas do processo de desenvolvimento
Verificação da qualidade do código
• Análise de código para gerar documentação
• Deteção de erros
• Deteção de falhas de segurança
• Verificação da sintaxe
• Verificação das regras de desenvolvimento
• Gestão de código-fonte
• Geração de testes automatizados
• Utilização de modelos de aprendizagem automática
• Propostas de módulos de código
• Preenchimento automático
• Geração de código completo
• Vantagens
• Apoio aos programadores
• Ganhos de tempo
• Controlo exaustivo
• Melhor documentação
• Algumas ferramentas de referência
• Ferramentas de análise de código: Pylint, Checkstyle, Pycodestyle, Black, CodeQL
• Ferramentas de preenchimento automático: Tabnine, Kite
• Ferramentas de geração de código: Alphacode, GitHub Copilot, Codex
Pycodestyle
• Verificação do respeito pelas convenções de escrita PEP8 (Python Enhancement Proposal 8)
• Arquitetura modular e ferramenta leve
• Integração com os principais IDE (VS Code, PyCharm, Jupyter Notebook)
• Retorno direto de erros durante a edição do código
• Configuração em modo utilizador ou projeto
Exemplos de exercícios práticos
• Instalação do Pycodestyle
• Implementação num programa simples
• Visualização de erros num código-fonte
• Integração no Jupyter Notebook
Pylint
• Verificação do respeito pela PEP8
• Deteção de erros de programação
• Apoio ao refactoring
• Configuração das prioridades do utilizador
• Integração contínua
• Integração com os principais editores e IDE
Exemplos de exercícios práticos
• Instalação do Pylint
• Configuração da deteção de erros
• Desativação de verificações de regras de escrita e refactoring
• Testes em programas característicos
CodeQL
• Pesquisa de falhas de segurança em código
• Funcionamento:
• Geração de uma base de dados a partir do código
• Execução de consultas para detetar falhas
• Linguagens suportadas e arquitetura
• Execução local com CodeQL‑CLI ou via GitHub
• Princípio de integração contínua
Exemplos de exercícios práticos
• Implementação do CodeQL para Python
• Escrita de consultas básicas
• Utilização da biblioteca CodeQL library for Python
AlphaCode
• Apresentação do projeto Google DeepMind
• Princípio de funcionamento
• Resultados obtidos no CodeForces
Copilot
• Apresentação do projeto GitHub Copilot alimentado por OpenAI Codex
• Função: assistente virtual de programação
• Sugestões de linhas completas de código ou funções completas
• Linguagens suportadas
Exemplos de exercícios práticos
• Demonstração no GitHub da utilização do Copilot
Codex
• Project
• OpenAI Codex
• Modulo do Project Open AI
• Produção de código informático a partir de pedidos em linguagem natural
• Recursos disponíveis
• Bibliotecas de código online
• Hackathons
• Bibliotecas Python
Exemplos de exercícios práticos
• Demonstração com OpenAI Codex
• Geração de código Python a partir de um caderno de encargos simples
• Testes e melhoria do código através de interface em linguagem natural
Limites e riscos
• Necessidade de uma nova organização das tarefas dos programadores
• Definição do problema a resolver, das restrições e dos conjuntos de testes
• Potenciais riscos de segurança
• Riscos jurídicos
• Origem das soluções utilizadas
• Propriedade do código
• Erros
• Na compreensão
• Na análise do problema a ser resolvido
Importância dos controlos humanos a implementar
O conteúdo deste programa pode ser objeto de adaptação em função dos níveis, pré-requisitos e necessidades dos participantes.
Formador
Facilitador que combina know-how com experiência empresarial e competências pedagógicas, para dar resposta a necessidades operacionais e potenciar a aprendizagem.
Clique na imagem para expandir
Os nossos espaços de formação oferecem todas as condições para continuar o seu desenvolvimento pessoal e profissional em absoluta segurança
Não se esqueça de subscrever o blog RhBizz e de nos seguir no LindekIn, Facebook, Instagram e Youtube.
















