Examen de las características de finalización de código de GitHub Copilot
GitHub Copilot proporciona sugerencias de estilo autocompletar mientras escribe código. Además de las sugerencias de autocompletar estándar, GitHub Copilot también proporciona sugerencias de edición siguientes (NES), que predicen la ubicación de la siguiente edición que probablemente realice y sugieren la finalización correspondiente.
Cuando realice las siguientes acciones, recibirá sugerencias de estilo autocompletar:
- Escriba una línea de código parcial o completa en el editor.
- Escriba un comentario de código parcial o completo en el editor.
- Escriba una línea de código en blanco en el editor.
Las sugerencias de edición siguientes aparecen automáticamente a medida que edita el código. Predicen qué cambio es probable que realice a continuación en función de las ediciones recientes y se muestran con un indicador especial que muestra la ubicación de edición sugerida.
Generar una sugerencia de autocompletar
GitHub Copilot acelera el desarrollo de aplicaciones mediante la sugerencia de finalizaciones de código basadas en el código que está escribiendo.
Por ejemplo, supongamos que desea crear un método de C# denominado addInt que devuelve la suma de dos enteros. Si empieza a escribir la firma del método, GitHub Copilot sugiere el código que cree que desea crear.
La acción de autocompletar sugerida se muestra sin resaltado de sintaxis en colores. Esto ayuda a diferenciar lo que se ha completado automáticamente en el código existente. Puede aceptar el código sugerido presionando la tecla Tab.
Puede presionar la tecla Esc para descartar una sugerencia.
El ejemplo addInt es un poco simplista, por lo que es posible que se pregunte cómo se desempeña GitHub Copilot con algo más complejo.
Supongamos que desea crear un método que acepte una lista de números y devuelva la suma de los números primos contenidos en la lista. Puede asignar un nombre al método addPrimeNumbersInNumericList. Al empezar a escribir la firma del método, GitHub Copilot genera una sugerencia automáticamente. Por ejemplo:
Es importante revisar las sugerencias antes de aceptarlas. Esta función de autocompletar es buena, por lo que puede aceptar la sugerencia presionando la tecla Tab.
Vamos a continuar con el escenario un poco más.
Una vez que la sugerencia se combina en el código, observe que el isPrime método está subrayado en rojo. Esto se debe a que el isPrime método todavía no existe en el código.
GitHub Copilot está entrenado para seguir los procedimientos recomendados, que incluyen dividir problemas complejos en piezas más pequeñas y manejables. En este caso, GitHub Copilot sugiere crear un método isPrime independiente para comprobar si un número es primo.
GitHub Copilot está listo para sugerir un fragmento de código para el método isPrime. Al escribir una línea en blanco debajo del método
Las sugerencias de autocompletar aceleran el proceso de desarrollo proporcionando fragmentos de código. Pero, ¿qué ocurre si las sugerencias no son exactamente lo que necesitas? GitHub Copilot proporciona una interfaz para administrar sugerencias de autocompletar.
Administración de sugerencias de autocompletar
Cuando GitHub Copilot sugiere un autocompletado, también proporciona una interfaz para gestionar las sugerencias. Puede aceptar una sugerencia, revisar otras sugerencias o descartar las sugerencias.
Al mantener el puntero del mouse sobre una sugerencia de autocompletar, se le presentan varias opciones para administrar las sugerencias.
La interfaz predeterminada para administrar sugerencias incluye las siguientes opciones:
- Acepte la sugerencia (en su totalidad) seleccionando Aceptar. También puede aceptar la sugerencia presionando la tecla Tab.
- Acepte parcialmente la sugerencia seleccionando Accept Word. También puede aceptar parcialmente una sugerencia presionando las
Ctrl+→teclas (flecha derecha). - Para ver sugerencias alternativas, seleccione
>o<. También puede ver las sugerencias alternativas presionando lasAlt+]teclas oAlt+[.
Al seleccionar la opción Accept Word aceptas la siguiente palabra en una sugerencia. Esto resulta útil cuando desea aceptar parte de la sugerencia y, a continuación, seguir escribiendo su propio código. Por ejemplo, puede aceptar la primera palabra de la sugerencia del método isPrime.
Puede continuar seleccionando Aceptar palabra hasta que haya aceptado la mayor parte de la sugerencia que desee.
Al seleccionar el icono de puntos suspensivos (...) situado a la derecha del botón Aceptar Word se proporcionan opciones adicionales, como Always Show Toolbar y Abrir panel de finalizaciones.
Al seleccionar la opción Mostrar siempre la barra de herramientas, se garantiza que la barra de herramientas permanezca visible al usar atajos de teclado para administrar las sugerencias de autocompletar. Al seleccionar la opción Abrir panel de finalizaciones se abre el panel de finalizaciones de GitHub Copilot. Al final de esta unidad se tratan varias sugerencias mediante el panel de finalizaciones de GitHub Copilot.
Nota:
Para aceptar una línea completa de una sugerencia, debe configurar un método abreviado de teclado personalizado para el editor.action.inlineSuggest.acceptNextLine comando. Esta opción no está disponible de forma predeterminada en la barra de herramientas.
Generación de sugerencias de código a partir de comentarios
Además de sugerir una acción de autocompletar basada en código, GitHub Copilot puede usar comentarios para sugerir fragmentos de código. Use frases de lenguaje natural para describir el código que desea crear. Esto permite a GitHub Copilot proponer sugerencias de autocompletar que cumplan los requisitos específicos. Por ejemplo, podría especificar el tipo de algoritmo que desea usar en un cálculo, o qué métodos y propiedades desea agregar a una clase.
Volvamos al ejemplo de número primo. En este punto, tiene el código siguiente:
Los métodos addPrimeNumbersInNumericList y isPrime parecen estar completos. Sin embargo, todavía necesita una lista de números que se puedan usar como argumento al llamar al método addPrimeNumbersInNumericList. Puede escribir un comentario que describa la lista de números que desee. Por ejemplo, una lista de 100 números aleatorios que van desde 1 y 1000.
Cuando empiece a escribir el comentario, GitHub Copilot sugiere un completado automático que finalice el comentario automáticamente. GitHub Copilot usa el código circundante para mejorar sus sugerencias. Por ejemplo, si empieza a escribir el comentario // create, GitHub Copilot usa el código circundante para predecir lo que desea crear. En este caso, GitHub Copilot usa el método addPrimeNumbersInNumericList para predecir que desea crear a list of numbers.
A medida que continúa escribiendo el comentario, GitHub Copilot actualiza su sugerencia de autocompletar. Cuando esté listo para aceptar la sugerencia, seleccione Aceptar o presione la tecla Tab.
Al crear una nueva línea de código después del comentario, GitHub Copilot comienza a generar un fragmento de código basado en el comentario y el código existente.
Acepte cada una de las sugerencias a medida que aparezcan.
Si GitHub Copilot no ha terminado, genera otra sugerencia para que usted la acepte.
Si escribe una nueva línea de código una vez completado el fragmento de código, GitHub Copilot genera otras sugerencias de autocompletado en función de los requisitos del proyecto. En este caso, GitHub Copilot sugiere una línea de código que llama al método addPrimeNumbersInNumericList, pasando la lista denominada numbers.
Ver varias sugerencias mediante el panel de finalizaciones de GitHub Copilot
Si no está satisfecho con las sugerencias iniciales de autocompletar, GitHub Copilot puede abrir una nueva pestaña en el editor con más opciones. Puede revisar la lista más grande de sugerencias para buscar una mejor coincidencia y, a continuación, seleccionarla.
Para demostrar esta característica, volvamos a una fase anterior en el ejemplo de números primos.
Supongamos que todavía necesita crear el método isPrime. Al escribir una línea en blanco debajo del método
Para abrir el Panel de finalizaciones de GitHub Copilot y ver otras sugerencias, presione las teclas Ctrl + Enter. También puede abrir el menú Más Acciones y seleccionar Abrir panel de finalizaciones.
El panel de finalizaciones de GitHub Copilot muestra hasta 10 otras sugerencias. Revise las sugerencias para encontrar la que mejor se adapte a sus necesidades.
Para aceptar una sugerencia, seleccione la etiqueta Accept suggestion NUMBER (Aceptar número de sugerencia ) debajo de la sugerencia. Por ejemplo, seleccione la etiqueta Aceptar sugerencia 1 debajo de la primera sugerencia.
Para rechazar todas las sugerencias, cierre la pestaña.
Resumen
Las sugerencias de autocompletar y las siguientes sugerencias de edición le ayudan a escribir código de forma más eficaz y precisa. GitHub Copilot proporciona sugerencias de autocompletar mientras escribe código y sugerencias de próxima edición que predicen su siguiente modificación probable. Puede generar una sugerencia de autocompletar escribiendo una línea de código parcial o completa, un comentario de código parcial o completo o una línea de código en blanco. Puede aceptar una sugerencia presionando la tecla Tab o descartando las sugerencias presionando la tecla Esc. Puede administrar sugerencias mediante la barra de herramientas que aparece al mantener el puntero sobre una sugerencia. La barra de herramientas le permite revisar sugerencias alternativas, aceptar una sugerencia, aceptar una palabra de una sugerencia o abrir el panel de finalizaciones de GitHub Copilot para ver más sugerencias.