Skip to main content

Elección de la herramienta de IA adecuada para la tarea

Comprenda cómo utilizar las herramientas de IA de GitHub para ayudar a desarrollar software.

Información general

El uso de herramientas de inteligencia artificial se está convirtiendo cada vez más en una parte estándar del flujo de trabajo diario de un desarrollador de software. Para ser competitivo en el mercado de trabajo, es importante saber qué herramientas de inteligencia artificial usar para cada tarea que se enfrenta como desarrollador.

GitHub proporciona herramientas de IA que asisten en cada fase del ciclo de vida del desarrollo de software (SDLC):

  •         **Planificación**:
    
    * chat de Copilot puede ayudarle a generar ideas e identificar las mejores tecnologías para su proyecto. * chat de Copilot puede crear propuestas para ayudar a realizar un seguimiento de sus ideas.
  •         **Creación de código**:
    
    * Las sugerencias incorporadas de Copilot ayudan a agregar código a medida que escribe. * Sugerencias de edición siguientes (versión preliminar pública) predice la siguiente edición que probablemente realice y sugiere una finalización. * chat de Copilot puede responder a preguntas y ofrecer sugerencias en un entorno conversacional.
    • Puede asignar Agente de programación Copilot a una incidencia abierta y generará automáticamente una solicitud de incorporación de cambios para abordar los cambios necesarios.
  •         **Revisiones**
    
    •           **revisión de código Copilot** proporciona comentarios en su IDE favorito o como una revisión de solicitud de incorporación de cambios en GitHub.
      
  •         **Pruebas**:
    
    * chat de Copilot puede ayudarle a escribir y depurar pruebas.
  •         **Implementación**
    
    •           **chat de Copilot** puede ayudarle a configurar canalizaciones de integración continua e implementación continua (CI/CD).
      
  •         **Operación**:
    
    * Agente de programación Copilot puede crear solicitudes de incorporación de cambios para incidencias abiertas. * chat de Copilot puede ayudar con las tareas en las que trabaja.

Planning

Durante la fase de planeación, se definen los objetivos, el ámbito y los requisitos de la project, estableciendo la dirección para el desarrollo mediante la definición de lo que se debe crear y cómo se logrará.

En GitHub, usa la creación de propuestas con tecnología de Copilot (versión preliminar pública) para simplificar el seguimiento de tus ideas. Proporciona un breve mensaje de lenguaje natural (o carga una imagen) y Copilot generará una propuesta estructurada.

Una vez que haya elegido un problema para solucionar, chat de Copilot puede ayudarle a intercambiar ideas para sus project y obtener información sobre las diversas herramientas, bibliotecas y recursos que puede necesitar. Puede hacer preguntas generalizadas a chat de Copilot sobre el proyecto que está imaginando para obtener sugerencias sobre el camino a seguir. Por ejemplo:

I'd like to build an web app that helps users track their daily habits and provides personalized recommendations. Can you suggest features and technologies I could use?

Creación

Durante la fase de creación, escribirás y refinarás el código de la aplicación. Aquí es donde puede dar vida al proyecto mediante la implementación de funcionalidades, la corrección de errores y la realización de iteraciones en el código base.

Copilot proporciona sugerencias de codificación estilo autocompletar a medida que escribes código en tu IDE favorito o en GitHub, lo que te ayuda a redactar y refinar el código más rápido. Puedes escribir código directamente o describir tu intención en lenguaje natural mediante comentarios en el IDE y Copilot generará sugerencias pertinentes.

Con sugerencias de edición siguientes (versión preliminar pública), Copilot predice modificaciones relacionadas en función de los cambios que realices activamente. Por ejemplo, si cambias el nombre de una variable o actualizas los parámetros de una función, sugiere las actualizaciones correspondientes a lo largo del código. Esto ayuda a mantener la coherencia y reduce la posibilidad de errores.

Uso de chat de Copilot en modo de pregunta

Usa chat de Copilot en modo de pregunta como programador de apoyo para obtener ayuda con las tareas de codificación, comprender conceptos complicados y mejorar el código. Puedes formular preguntas, obtener explicaciones o solicitar sugerencias en tiempo real.

  • Can you explain what this JavaScript function does? I'm not sure why it uses a forEach loop instead of a for loop.

  • What’s the difference between let, const, and var in JavaScript? When should I use each one?

Uso de chat de Copilot en modo de edición

Use chat de Copilot en modo de edición cuando desee un control más pormenorizado sobre las ediciones que Copilot propone. En el modo de edición, puedes elegir los archivos en los que Copilot puede hacer cambios, proporcionar contexto a Copilot con cada iteración y decidir si aceptar o no las modificaciones sugeridas.

  • Refactor the calculateTotal function to improve readability and efficiency.

  • The login function is not working as expected. Can you debug it?

  • Format this code to follow Python’s PEP 8 style guide.

Uso de chat de Copilot en modo de agente

En modo agente, chat de Copilot puede ayudar a automatizar tareas repetitivas y gestionar directamente el flujo de trabajo dentro de tu proyecto. Úsalo para crear solicitudes de incorporación de cambios después de realizar cambios en el código. También puedes usarlo para ejecutar pruebas y linters en segundo plano mientras trabajas en el proyecto.

  • Create a pull request for the recent changes in the user-auth module and include a summary of the updates.

  • Run all tests and linters for the payment-processing module and provide a summary of any issues or errors found.

Reviews

La fase de revisión garantiza la calidad y confiabilidad del código. Implica analizar los cambios, identificar posibles problemas y mejorar la estructura y la funcionalidad generales del código base.

Mientras está codificando en el IDE, pide a Copilot que:

  •         **Revise una selección de cambios:** resalte partes específicas del código y pregunte a Copilot para obtener una revisión inicial. Esto es ideal para comentarios rápidos sobre ediciones más pequeñas.
    
  •         **Review all changes:** Solicite una revisión más profunda de todos los cambios de un archivo o un proyecto. Copilot analizará el trabajo y proporcionará sugerencias para mejorarlo.
    

Cuando estés listo para recibir comentarios de otros usuarios en el sitio web de GitHub, primero asigna Copilot como revisor en tu pull request. Agregará automáticamente comentarios para resaltar las áreas en las que puede mejorar la calidad del código o identificar posibles errores antes de la revisión humana.

Testing

La fase de prueba valida que la aplicación funciona según lo previsto. Esta fase implica escribir y ejecutar pruebas para detectar errores, garantizar la funcionalidad y mantener la calidad del código antes de la implementación.

          **chat de Copilot** puede ayudar al generar pruebas unitarias y de integración, depurar errores y sugerir casos de prueba adicionales para garantizar una cobertura completa. Estos son algunas indicaciones de ejemplo:
  • Write unit tests for this function to calculate the factorial of a number. Include edge cases like 0 and negative numbers.

  • How do I run these tests using Python's unittest framework?

  • Write integration tests for the deposit function in the BankAccount class. Use mocks to simulate the NotificationSystem.

  • What additional tests should I include to ensure full coverage for this module?

Despliegue

La fase de implementación implica preparar el código para producción y garantizar una versión sin problemas.

          **chat de Copilot** puede ayudarle a configurar scripts de implementación, configurar canalizaciones de CI/CD y solucionar problemas. Estos son algunas indicaciones de ejemplo:
  • Write a deployment script for a Node.js application using GitHub Actions to deploy to an AWS EC2 instance.

  • Set up a GitHub Actions workflow to build, test, and deploy a Python application to Heroku.

  • Analyze this deployment log and suggest why the deployment failed.

Operation

Durante la fase de operación, el enfoque consiste en mantener y supervisar la aplicación en producción para asegurarse de que se ejecuta sin problemas y satisface las expectativas del usuario. Esta fase suele implicar tareas como depurar problemas de producción, optimizar el rendimiento y garantizar la confiabilidad del sistema.

Puede usar Agente de programación Copilot como agente autónomo que pueda ayudar a mantener y mejorar la aplicación en producción. Asigna una propuesta de GitHub a Copilot, y explorará de forma autónoma el repositorio, identificará posibles correcciones y creará una solicitud de incorporación de cambios con los cambios propuestos. A continuación, solicitará automáticamente que realices una revisión.

Para incidencias que esté abordando usted mismo, use chat de Copilot para ayudar a analizar registros, depurar problemas y sugerir optimizaciones. Por ejemplo:

  • Analyze this error log and suggest possible causes for the issue.

  • Write a script to monitor the memory usage of this application and alert when it exceeds a threshold.

  • How can I optimize the database queries in this code to improve performance?

Pasos siguientes

Antes de iniciar la siguiente tarea, dedica un momento a identificar la herramienta adecuada para que el trabajo sea más rápido y eficaz.

¿Te sientes preparado para identificar la herramienta de IA adecuada para la siguiente tarea?

          <a href="https://docs.github.io/success-test/yes.html" target="_blank" class="btn btn-outline mt-3 mr-3 no-underline">
          <span>Yes</span></a><a href="https://docs.github.io/success-test/no.html" target="_blank" class="btn btn-outline mt-3 mr-3 no-underline"><span>No</span></a>