Interacción con Copilot

Completado

En esta unidad se exploran las formas en que puede maximizar la interacción con GitHub Copilot en el entorno de desarrollo. Al comprender las características y funcionalidades del servicio, aprenderá a usarlo de forma eficaz.

Las siguientes secciones describen las diferentes maneras de desencadenar y usar GitHub Copilot, junto con ejemplos y accesos directos para ayudarle a sacar el máximo partido.

Sugerencias en línea

Las sugerencias insertadas son la forma más inmediata de asistencia de Copilot. A medida que escribe, Copilot analiza el código y el contexto para ofrecer finalizaciones de código en tiempo real. Esta característica predice lo que podría querer escribir a continuación y muestra sugerencias de una manera sutil e discreta.

Las sugerencias que ofrece Copilot aparecen como texto atenuado delante del cursor.

  • Para aceptar una sugerencia, seleccione la tecla Tab o la tecla > (flecha derecha).
  • Para rechazar una sugerencia, siga escribiendo o seleccione la tecla Esc.

Las sugerencias insertadas son especialmente útiles cuando se trabaja en tareas repetitivas o se necesita código reutilizable rápido.

Este es un ejemplo:

def calculate_average(numbers):
    # Start typing here and watch Copilot suggest the function body

Paleta de comandos

La paleta de comandos proporciona acceso rápido a las diversas funciones de Copilot, para que pueda realizar tareas complejas solo con algunas pulsaciones de tecla.

  1. Abra la paleta de comandos en Visual Studio Code seleccionando Ctrl+Shift+P (Windows o Linux) o Cmd+Shift+P (Mac).
  2. Escriba Copilot para ver los comandos disponibles.
  3. Seleccione acciones como Explica esto o Genera pruebas unitarias para obtener ayuda.

Chat de Copilot

El chat de Copilot es una característica interactiva que le permite comunicarse con Copilot mediante lenguaje natural. Puede formular preguntas o solicitar fragmentos de código y Copilot proporciona respuestas en función de la entrada.

  1. Abra el panel de chat de Copilot en el IDE.
  2. Escriba preguntas o solicitudes en lenguaje natural y, a continuación, evalúe la respuesta de Copilot.

Por ejemplo, puede escribir: "¿Cómo se implementa una búsqueda binaria en Python?" El chat de Copilot es ideal para explorar nuevos conceptos de codificación o obtener ayuda con una sintaxis desconocida.

Copilot podría responder con:

def binary_search(arr, target):
    left, right = 0, len(arr) - 1
    while left <= right:
        mid = (left + right) // 2
        if arr[mid] == target:
            return mid
        elif arr[mid] < target:
            left = mid + 1
        else:
            right = mid - 1
    return -1

Chat insertado

El chat en línea habilita conversaciones específicas del contexto con Copilot directamente en el editor de código. Puede usar esta característica para solicitar modificaciones de código o explicaciones sin cambiar de contexto.

  1. Coloque el cursor donde quiera ayuda.
  2. Use el método abreviado de teclado Ctrl+I (Windows o Linux) o Cmd+I (Mac) para abrir el chat en línea.
  3. Formule preguntas o solicite cambios específicos de esa ubicación de código.

El chat en línea le ayuda a centrarse en una sección específica del código y recibir consejos dirigidos. Además, puede usar comandos de barra diagonal para una interacción más eficaz.

Los comandos de barra diagonal son accesos directos que permiten realizar rápidamente acciones en Copilot. Estos comandos proporcionan una manera cómoda de interactuar con Copilot sin necesidad de navegar por los menús.

Estos son algunos comandos de barra diagonal comunes y su uso:

  • /explain - Proporciona una explicación del código seleccionado.
  • /suggest - Ofrece sugerencias de código basadas en el contexto actual.
  • /tests - Genera pruebas unitarias para la función o clase seleccionada.
  • /comment - Convierte los comentarios en fragmentos de código.

Para usar un comando de barra diagonal, escriba el comando en el editor y presione Enter. Por ejemplo:

# Select the function, use the shortcut to open the inline chat, and type: /explain
def calculate_average(numbers):

Comentarios al código

Copilot usa el procesamiento de lenguaje natural para convertir comentarios en código. Puede describir la funcionalidad que desea en un comentario. Al seleccionar la tecla Enter, Copilot genera código en función de la descripción.

Este es un ejemplo:

# Function to reverse a string
def reverse_string(s):
    # Copilot suggests the function body here
## Function to reverse a string
def reverse_string(s):
    return s[::-1]

Este enfoque es beneficioso para redactar código rápidamente, especialmente cuando la tarea es sencilla.

Sugerencias múltiples

Para fragmentos de código complejos, Copilot puede ofrecer varias alternativas.

  1. Cuando Copilot ofrece una sugerencia, busque el icono de bombilla.
  2. Seleccione el icono o use Alt+] (Windows/Linux) o Option+] (Mac) para recorrer alternativas.

Varias sugerencias le ayudan a explorar diferentes enfoques de codificación y seleccionar el más adecuado.

Explicaciones

Comprender el código existente es fundamental, especialmente en proyectos grandes. Puede usar la característica Explica esto para obtener explicaciones de fragmentos de código.

  1. Seleccione un bloque de código.
  2. Haga clic con el botón derecho en el bloque de código y seleccione Copilot: Explica esto en el menú contextual.
  3. Lea la explicación que Copilot proporciona para el código seleccionado.

Esta característica es útil para fines de aprendizaje y al revisar el código escrito por otros usuarios.

Generación de pruebas automatizada

Las pruebas unitarias son esenciales para garantizar la calidad y confiabilidad del código. Copilot puede ahorrarle tiempo y esfuerzo mediante la generación de pruebas unitarias para sus funciones o clases.

  1. Seleccione una función o clase.
  2. Use la paleta de comandos para elegir Copilot: Genera pruebas unitarias.
  3. Revise los casos de prueba que Copilot sugiere para el código.

Este es un ejemplo:

def add(a, b):
    return a + b

# Copilot might generate a test like this:
def test_add():
    assert add(2, 3) == 5
    assert add(-1, 1) == 0
    assert add(0, 0) == 0

La generación automatizada de pruebas le ayuda a mantener la integridad del código y a detectar errores al principio del proceso de desarrollo.

Tenga en cuenta que Copilot aprende del contexto. Mantener el código bien estructurado y comentado ayuda a Copilot a proporcionar asistencia más precisa y relevante. Cuanto más interactúe con Copilot, mejor se convierte en comprender el estilo y las preferencias de codificación.