# #EventoYoSigo: Introducción a la programación asistida con GitHub Copilot --- ## 1. Introducción [GitHub Copilot](https://docs.github.com/en/copilot) es una herramienta de inteligencia artificial desarrollada por GitHub en colaboración con OpenAI, que está diseñada para asistir en la programación. Puede realizar diversas tareas, desde corregir código a sugerir líneas completas o bloques de código. ### ¿Qué no es GitHub Copilot? No está diseñada para desempeñar las funciones de un programador, es un asistente. Esto implica que las sugerencias de Copilot deben ser revisadas y validadas por una persona con experiencia, ya que pueden no ser siempre óptimas o adecuadas para todos los contextos. Además, Copilot puede no ser efectivo en situaciones que requieran soluciones altamente personalizadas o específicas de un dominio. ## 2. Suscripciones y Acceso para Universidades GitHub Copilot ofrece distintos [planes de suscripción](https://github.com/features/copilot/plans): - Individual (con 30 días de prueba) - Business - Enterprise Pero, para instituciones educativas y universidades, GitHub ofrece planes especiales que permiten a estudiantes y profesores acceder a Copilot de [manera gratuita](https://docs.github.com/en/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot). ## 3. Integración con herramientas GitHub Copilot se integra de manera fluida con varios editores de código y entornos de desarrollo integrados (IDEs), incluyendo **Visual Studio Code**, JetBrains IDEs, Neovim y Azure Data Studio. ## 4. Principales Operaciones y Casos Prácticos GitHub Copilot es capaz de realizar una amplia gama de operaciones, desde sugerir líneas de código y funciones completas hasta generar pruebas unitarias y documentación. ### 4.1. Generación de código Copilot puede generar automáticamente funciones y bloques de código a partir de descripciones en comentarios y en base a operaciones previas. ### 4.2. Creación de pruebas unitarias Copilot puede sugerir pruebas unitarias basadas en el comportamiento esperado del código, lo que ayuda a asegurar que tu código funcione como se espera desde el principio. Diseña pruebas pero no las ejecuta para validar el código. ### 4.3. Mejora de código Copilot puede sugerir mejoras y optimización en el código, ayudando a hacerlo más eficiente, legible y mantenible. Esto incluye desde sugerencias basadas en buenas prácticas y optimización a mejoras en la claridad del código. ### 4.4. Generación de documentación Copilot puede ayudar a generar documentación de código, como comentarios explicativos y archivos README, basándose en el código y su estructura. ### 4.5. Explicaciones y ejemplos Al importar librerias y funciones, Copilot puede ofrecer explicaciones detalladas sobre su funcionamiento y uso. ## Recomendaciones - Familiarizaté con los atajos de teclado - Mejor tus comentarios - Revisar las respuestas de GitHub Copilot - Recuerda que es un asistente --- # Información <div class="alert alert-block alert-info"> <b>Autor:</b> Wenceslao Arroyo-Machado</br> <b>Fecha de actualización:</b> 14/02/2024</br> <b>GitHub:</b> <a href="https://github.com/Wences91/teaching">https://github.com/Wences91/teaching</a> </div>