Examen de las características de desarrollo de código de GitHub Copilot
Visual Studio Code implementa GitHub Copilot con dos extensiones, GitHub Copilot y chat de GitHub Copilot. Estas extensiones aumentan la productividad de los desarrolladores al generar sugerencias que amplían o mejoran sus aplicaciones. Cada extensión proporciona un conjunto de características que le ayudan a desarrollar código de forma más eficaz:
- La extensión GitHub Copilot genera sugerencias de finalización de código mediante el código que escriba en el editor o los comentarios del código.
- La extensión GitHub Copilot Chat genera sugerencias de código basadas en interacciones de chat o acciones inteligentes que actúan en el código seleccionado.
Nota:
En este módulo, usará las extensiones de GitHub Copilot para desarrollar nuevas características y aplicaciones de código. Hay dos módulos independientes que abarcan el uso de GitHub Copilot para crear pruebas unitarias y realizar mejoras en el código existente.
herramientas de GitHub Copilot en Visual Studio Code
Visual Studio Code proporciona fácil acceso a las siguientes características de GitHub Copilot y chat de GitHub Copilot:
- Finalizaciones de línea de código: Use finalizaciones de línea de código para escribir código de forma más eficaz.
- Chat en línea: Inicie una conversación de chat en línea directamente desde el editor para obtener ayuda mientras está codificando.
- Vista de chat: Abra un asistente de IA en un lateral que pueda ayudarle en cualquier momento.
- Chat rápido: Haga una pregunta rápida y vuelva a lo que está haciendo.
- Acciones inteligentes: ejecute acciones inteligentes para completar determinadas tareas sin tener que escribir un mensaje.
Las extensiones de GitHub Copilot aportan la eficacia de la inteligencia artificial al entorno de Visual Studio Code.
Generación de código mediante finalizaciones de línea de código con GitHub Copilot
GitHub Copilot genera finalizaciones de línea de código al escribir código. El código que ya está en la aplicación proporciona contexto que GitHub Copilot usa para generar sugerencias precisas. Por ejemplo, supongamos que estás trabajando en una clase que procesa el gasto de un cliente. La clase usa una lista que contiene los gastos de todos los clientes. Debe crear un método que devuelva la suma de todos los gastos. Si comienzas a escribir la firma del método, GitHub Copilot genera una sugerencia que completa la línea de código.
Si está satisfecho con la sugerencia, presione la tecla Tab o seleccione Aceptar. Las operaciones de Autocompletar le ahorran tiempo y le ayudan a escribir código con precisión, ya que le proporcionan los nombres de las variables y otros elementos del código.
También puede usar finalizaciones de línea de código para ver diferentes opciones para construir el código. Por ejemplo, si empieza a escribir la instrucción de llamada para un método, GitHub Copilot proporciona sugerencias que implementan las diferentes sobrecargas de métodos. Puede recorrer las sugerencias y aceptar la opción que coincida con la intención. También puede rechazar todas las sugerencias. Este proceso le ayuda a explorar rápidamente diferentes estilos y técnicas de codificación.
GitHub Copilot también genera sugerencias de finalización de línea de código a partir de comentarios de código. Por ejemplo, si escribe un comentario que describe un método que desea crear, GitHub Copilot genera una sugerencia para la firma y la implementación del método.
Observe que la finalización del código sugerido usa información del código existente y el comentario de código que describe el método.
Los desarrolladores usan finalizaciones de código para acelerar el desarrollo de una estructura de código inicial.
Generación de código mediante chat de GitHub Copilot
GitHub Copilot Chat le ayuda a crear código mediante interfaces de chat y acciones inteligentes. Por ejemplo, si introduces un mensaje en GitHub Copilot Chat para solicitar la creación de un nuevo método, GitHub Copilot proporciona sugerencias sobre una o varias firmas de método e implementaciones. Revisar y, a continuación, aceptar o descartar las sugerencias le ayuda a crear una versión inicial del código de forma más rápida y precisa.
Nota:
La extensión GitHub Copilot Chat para Visual Studio Code incluye una interfaz de chat que procesa la entrada del usuario. Este entrenamiento usa los términos pregunta e indicación al hacer referencia a la información que usted proporciona durante una sesión de chat.
GitHub Copilot Chat es especialmente útil cuando necesita desarrollar código que implemente recursos desconocidos, como una nueva biblioteca, marco o API. Al enviar un mensaje que describa sus necesidades, GitHub Copilot Chat genera sugerencias que muestran cómo lograr su objetivo. Revisar las sugerencias también puede enseñarle a implementar los nuevos recursos.
Proporcionar GitHub Copilot Chat con mensajes o preguntas que incluyan un ámbito y una intención claros mejoran las respuestas generadas. Puede formular preguntas que proporcionen contexto y describan sus requisitos en un estilo conversacional. GitHub Copilot Chat usa la información que proporciona para generar sugerencias de código que satisfagan sus necesidades y que coincidan con el estilo de codificación.
Puede usar participantes de chat, comandos slash y variables de chat para aclarar el contexto de sus indicaciones.
- Los participantes del chat, como
@workspaceo@terminal, ayudan a GitHub Copilot Chat a comprender el contexto de la pregunta. - Los comandos de barra diagonal, como
/explaino/new, ayudan a GitHub Copilot Chat a comprender la intención o el propósito de la pregunta. - Las variables de chat, como
#fileo#editor, ayudan a Copilot Chat a centrarse en algo específico al considerar el contexto más grande de la pregunta.
El uso de estos descriptores especializados ayuda a GitHub Copilot Chat a generar respuestas más precisas y útiles.
Puede combinar participantes de chat con comandos de barra diagonal para realizar acciones específicas. Por ejemplo, podría crear una estructura básica para una nueva aplicación de consola de C# usando el siguiente comando: @workspace /new console application in C#. Este aviso incluye un participante de chat (@workspace) y un comando de barra (/new) para ayudar a GitHub Copilot Chat a realizar la tarea deseada.
GitHub Copilot puede estructurar áreas de trabajo más complejas. Por ejemplo, la siguiente indicación crea las áreas de trabajo para una aplicación Node.js que usa el marco Express, el motor de plantillas Pug y TypeScript: @workspace /new Node.js Express Pug TypeScript.
Generación de código con GitHub Copilot Chat mediante la vista Chat
La vista Chat de Visual Studio Code proporciona acceso a un asistente de IA que le ayuda a desarrollar código. Puede formular preguntas y obtener ayuda del asistente de IA sin salir del entorno de Visual Studio Code. La vista Chat proporciona ayuda al desarrollar código y al explorar enfoques para resolver problemas de codificación difíciles. También puede usar la vista Chat para formular preguntas sobre el código existente, para obtener ayuda con errores o lógica de codificación, y para obtener información sobre el uso de recursos del proyecto. La vista Chat puede ayudarle a aprender nuevas técnicas de codificación, explorar diferentes estilos de codificación y mejorar sus aptitudes de codificación.
La vista Chat se abre en su propio panel a la derecha del editor de código de Visual Studio Code. Para abrir la vista Chat, seleccione Chat en la barra de título de Visual Studio Code o use el método abreviado de teclado Ctrl+Alt+I.
Si necesita más espacio de pantalla en Visual Studio Code, puede abrir la vista Chat en una ventana independiente seleccionando Abrir Chat en nueva ventana en el menú contextual de la vista Chat.
GitHub Copilot Chat proporciona resultados enriquecidos e interactivos que incluyen los siguientes elementos:
- Texto simple. Por ejemplo, para proporcionar una respuesta de lenguaje natural a una pregunta.
- Imágenes. Por ejemplo, para mostrar un diagrama o una captura de pantalla.
- Botones. Por ejemplo, para desencadenar una acción.
- Referencias. Por ejemplo, identificadores uniformes de recursos (URI), donde puede encontrar más información.
- Árboles de archivos. Por ejemplo, para mostrar una vista previa del área de trabajo cuando un participante de chat propone crear una nueva área de trabajo.
El siguiente ejemplo muestra la respuesta para una indicación que se usa para crear una aplicación Express. GitHub Copilot Chat proporciona una explicación de texto sencilla, una vista de árbol que muestra una estructura de área de trabajo sugerida y un botón que se puede usar para crear la nueva área de trabajo.
GitHub Copilot mantiene un historial de la conversación. El historial se usa para mejorar las respuestas y las preguntas de seguimiento sugeridas por GitHub Copilot Chat.
Administrar bloques de código en la vista Chat
En función de su pregunta, GitHub Copilot Chat puede devolver código fuente en la respuesta. El código fuente se muestra como un bloque de código y puede administrar el código de varias maneras diferentes.
Si mantiene el puntero del mouse sobre el bloque de código, se muestran las opciones para administrar el bloque de código. Las opciones iniciales son Aplicar, Insertar (Ctrl+Entrar) y Copiar.
El botón Más acciones (...) muestra las opciones para Insertar en terminal (Ctrl+Alt+Entrar) y Insertar en nuevo archivo.
Si GitHub Copilot Chat detecta que un bloque de código contiene un comando, puede ejecutarlo directamente en el terminal integrado con Insert en Terminal (Ctrl+Alt+Entrar). Esta opción crea o abre el terminal activo e inserta el texto del comando, listo para ejecutarse.
Generación de código con GitHub Copilot Chat mediante chat en línea
La interfaz de chat en línea proporciona acceso a características eficaces de inteligencia artificial mientras le mantiene centrado en el código. Cuando esté trabajando en el editor de código, puede abrir el chat en línea presionando Ctrl+I en el teclado.
Puede usar el chat en línea de las maneras siguientes:
- Para formular preguntas sobre el código existente.
- Para modificar o reemplazar el código existente.
- Para generar código nuevo.
Creación de una nueva característica mediante chat en línea
La interfaz de chat en línea se puede usar para desarrollar nuevas funcionalidades de código. Por ejemplo, puede usar el chat insertado para crear un nuevo componente de interfaz de usuario, un nuevo punto de conexión de la API o una nueva canalización de procesamiento de datos.
Puede crear una nueva funcionalidad de código usando el chat integrado siguiendo estos pasos:
Seleccione código en el editor.
Abra la interfaz de chat en línea presionando Ctrl+I en el teclado.
Escriba un mensaje que describa la característica que desea crear.
Revise las sugerencias proporcionadas por GitHub Copilot Chat y refinar el mensaje si es necesario.
Una vez que esté satisfecho, acepte una sugerencia.
Este es un ejemplo que demuestra cómo crear un nuevo método usando el chat en línea.
Creación de expresiones regulares mediante chat en línea
Las expresiones regulares son patrones usados para emparejar combinaciones de caracteres en cadenas. A algunos desarrolladores les resulta difícil escribir expresiones regulares porque pueden ser complejas y difíciles de entender.
La interfaz de chat integrada puede usarse para generar expresiones regulares de forma rápida y precisa. El uso del chat insertado permite, por ejemplo, generar expresiones regulares para validar direcciones de correo electrónico, números de teléfono, códigos postales y otros patrones de datos.
Puede crear una expresión regular mediante chat en línea siguiendo los pasos siguientes:
Seleccione código en el editor.
Abra la interfaz de chat en línea presionando Ctrl + I en el teclado.
Escriba un mensaje que describa el patrón de datos que necesita validar.
Revise las sugerencias proporcionadas por GitHub Copilot Chat y, una vez que esté satisfecho, acepte una sugerencia.
Este es un ejemplo que demuestra cómo crear una expresión regular para direcciones de correo electrónico usando chat en línea.
Siempre es importante revisar las respuestas generadas por GitHub Copilot Chat.
GitHub Copilot Chat sugiere que se puede usar la siguiente expresión regular para validar las direcciones de correo electrónico: ^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$.
Vamos a tomar un minuto para evaluar la expresión regular sugerida.
^: Este símbolo indica el inicio de una línea. La dirección de correo electrónico debe comenzar aquí.
[a-zA-Z0-9_.+-]+: Esta parte de la expresión coincide con uno o varios (+) de los caracteres dentro de los corchetes ([]). Los caracteres pueden estar en minúscula (a-z), mayúscula (A-Z), o bien pueden ser numéricos (0-9) o caracteres especiales como carácter de subrayado (_), punto (.), signo más (+) o guion (-).
@: Esta parte de la expresión es el símbolo "arroba" (@). Es un carácter literal en la dirección de correo electrónico.
[a-zA-Z0-9-]+: Esta parte de la expresión es similar a la primera, pero es para la parte del nombre de dominio del correo electrónico. Puede contener uno o más caracteres en minúscula, mayúscula, numéricos o guiones (-).
\.: Esta parte de la expresión es un carácter de punto literal (.). Separa el nombre de dominio de la extensión de dominio.
[a-zA-Z0-9-.]+: Esta parte de la expresión coincide con la extensión del dominio. Puede contener uno o más caracteres en minúscula, mayúscula, dígitos, guiones (-) o puntos (.).
$: Este símbolo indica el final de una línea. La dirección de correo electrónico debe terminar aquí.
En general, esta expresión regular es un buen punto de partida para validar las direcciones de correo electrónico, pero tiene algunas limitaciones y puede que no cubra todos los formatos de correo electrónico válidos. Es posible que quiera considerar el uso de patrones más completos o incluso bibliotecas de validación de correo electrónico dedicadas para aplicaciones críticas.
Resumen
Las extensiones de GitHub Copilot ayudan a los desarrolladores a escribir código más rápido y con menos errores. La extensión GitHub Copilot genera sugerencias de finalización de código mediante el código que escriba en el editor o los comentarios del código. La extensión GitHub Copilot Chat genera sugerencias de código basadas en interacciones de chat o acciones inteligentes que actúan en el código seleccionado.