Enjoy A New Student Discount All 55,000 Courses on sale for Only $12.99

Ends in 05h 23m 49s

Usando la Inteligencia Artificial en la programación

Hace unos meses, me decidí a probar un poco como funcionaba eso de la inteligencia artificial en un entorno de programación, con Java, Javascript, React, Angular u otros , en una situación de desarrollo normal.

Mi primera prueba fue con Tabnine, en aquel momento, me ofrecía un mes de prueba gratuito, y, aunque reconozco que me gusto, (teneis los comentarios aqui), cuando acabó el mes, pensé en probar Github Copilot, ya que es una herramienta de GitHub con el que ya trabajaba, y, puestos a tirar de un repositorio, el de Github me pareció atractivo.

Como parecia que funcionaba, decidir contratar la version mas sencilla , y empece a utilizarla en mi trabajo diario.

Despues de estos meses, he pensado que seria buena idea comentar como me ha ido, y que ventajas ha aportado a los IDEs que normalmente utilizo y que son

  • Visual Studio Code, para entornos de Frontend y Node
  • Eclipse, para PHP, básicamente, aunque tengu una version preparada para Java para cuando tengo que preparar desarollos de escritorio o web sin Spring
  • STS, Para java, normalmente Spring y SpringBoot

Si acaso, otro dia podemos hablar de la utilización de Visual Studio Code, con STS. cosa que quiero probar, a la vez de trabajar con docker, para poder independizar las versiones que utilizo….

Visual Studio Code y Github Copilot

Nuestro primer desafío, aunque no el mas complejo, es instalar el plugin Copilot. Realmente, Copilot proporciona la extensión necesaria, por lo que solo es necesario añadir la extensión

En unos momentos, se instalara todo lo necesario

Si empezais con la version gratuita, podeis bajar por las instrucciones, que considero importante leer, hasta llegar a

En donde debeis pulsar, para que abra el navegador en GitHub-Copilot y podais registraros.

Empezando a trabajar en Visual Code

A partir de este momento, ya podeis empezar a trabajar con Code; bueno, vosotros solo teneis que seguir escribiendo el codigo que necesiteis, y, a veces, Copilot os ofrece terminar la linea, u os ofrece la siguiente linea o lineas que conviene poner a continuación; por ejemplo el codigo contiene

SI doy un Intro en la linea 10, me encuentro con

Localizó un posible texto en mi historia y me lo sugirió. Vale, puede que no sea muy buena, si quiero utilizarlo, solo deberé pulsar TAB, y si no, sigo con lo que quiera hacer

Ahora, he ido a la linea 7, y he pulsado Ctrl+Enter, para pedir sugerencias, y me muestra algunas

Otra forma de trabajar, es abriendo un chat; para ello debemos ir a los tres puntos que cierran nuestra lista a la izquierda y seleccionar Chat

Y, automáticamente, aparece la pantalla de chat,

En donde podemos realizar preguntas, o utilizar las sugeridas, en este caso, deberemos seleccionar el codigo relacionado en el area de la derecha.

En este caso he preguntado como podía mover un objeto por la pantalla, sabiendo que estoy en javascript, y esta ha sido la respuesta.(He ampliado el lado izquierdo en aras de la claridad)

Me ha ofrecido un codigo javascript, comentado para que lo utilice, y….en la parte inferior, me ha ofrecido otra solucion:

En donde tambien puedo clicar, para conseguir mas información

Instalando en Eclipse o en STS

En este caso, la instalación, no es que sea mas costosa, si no, que no viene de Copilot directamente, pero ya existe en el marketplace

El funcionamiento es el mismo, Copilot va sugiriendo lo que le parece, y, en caso necesario, aunque no tenemos chat, podemos añadir un comentario al programa, y esperar que Copilot lo resuelva. Como siempre, el TAB acepta la sugerencia

En la parte inferior derecha de la pantalla tenemos un boton para cualquier incidencia que tengamos

Por ejemplo, para logonarme, pulso en Sig int, y me aparece una pantalla

Puedo copiar el «Device code», o pulsar directamente el botón de «Copy Code and Open», y se abrirá el navegador

Pegamos lo copiado y pulsamos en «Continue» para ver

Aceptamos

Y, tras esto, podemos empezar a trabajar, por ejemplo, he terminado de definir los campos de un Entity, y escribo el comentario de la linea 49; automáticamente, copilot, me ofrece el constructor

Si me interesa, pulsare TAB y listo…

Otro ejemplo; he empezado a crear el servicio para Peliculas, y empiezo a escribir la linea 3

Estoy llegando a Implements, y Copilot me sugiere el resto….No esta mal; tras darle al TAB, e importar lo necesario, acepto que me escriba los metodos de la interfaz, y me encuentro con

Media clase hecha, tengo que escribir la definición del campo, y el constructor de la clase, (líneas 15 a 19) y al ir a escribir la linea 24, solo «return», Copilot descubre lo que me interesa, y completa la linea, me va a valer, y daré un TAB.

Puede que Eclipse no sea tan eficiente, y, la verdad, programo con Eclipse (STS) pero tengo abierto Visual code, para poder utilizar el chat… Copilot puede hacerte un programa basico, en minutos.

Esta vez he vuelto a Visual Code, y he seleccionado el Entity Programa, en chat, he indicado «create service». La respuesta la dejo a continuación, y sin comentar, porque no se que puedo decir…..

y siguió

Conclusión

Puede que la Inteligencia Artificial todavia no sea inteligencia, pero nos puede ahorrar horas de trabajo, por lo que deberíamos plantearnos el incluirla en nuestros procesos diarios, sin ningún tipo de temor. Ahora ya es útil; puede que le falte mucho por conseguir ser «inteligente«, pero una herramienta de ese valor, no la podemos ignorar en nuestro cajón de trastos.

Para Visual Code

Para Eclipse/STS

Deja un comentario

/*Si te ha gustado el artículo
no dudes en compartirlo*/

Facebook
Twitter
LinkedIn

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies

Ver mi IP

Ver ip de mi máquina
tipo valor
Ip: 18.118.193.232
Proxy: 18.118.193.232
Remote host: ec2-18-118-193-232.us-east-2.compute.amazonaws.com
Remote port: 54760
** 18.118.193.232, 172.71.254.237