leanmind logo leanmind text logo

Blog

Refactorización Avanzada

Dominar el refactoring productivo para maximizar el retorno de la inversión.

La saga Mars Rover - Shortcuts IntelliJ

Por Aitor Reviriego Amor y Aitor Santana

Este artículo forma parte de la Saga Mars Rover, en la que vamos mostrando el desarrollo de la kata y lo que vamos aprendiendo en ella. En concreto este no tiene un orden relevante, por lo que no hace falta leer los anteriores capítulos. Vamos a mostrar una serie de shortcuts que nos han ayudado a aumentar nuestra eficiencia al llevar a cabo esta kata.

Shortcut: Alt + Enter

Crear objetos

Para aprovechar esta ventaja proporcionada por el IDE, empleamos la técnica de diseñar pruebas pensando en la implementación necesaria para que la prueba pase en verde ✅, siguiendo la metodología descrita por Robert C. Martin en su obra "La artesanía del código limpio"

Robert C. Martin: “Escribe en los tests el código que sabes que quieres escribir”.

la-saga-mars-rover-shotcuts-intellij-1

En este punto, seleccionamos la ubicación donde deseamos crear el record, ya sea en el directorio específico o en el paquete designado.

la-saga-mars-rover-shotcuts-intellij-2

la-saga-mars-rover-shotcuts-intellij-3

Refactor de sentencias de control

Otro uso bastante útil de este shortcut es a la hora de refactorizar sentencias de control, como if-else, switch o bucles for. En este ejemplo tenemos un foreach de Java:

la-saga-mars-rover-shotcuts-intellij-4

Si ejecutamos el shortcut del menú contextual Alt + Enter veremos todas las opciones que nos ofrece el IDE.

la-saga-mars-rover-shotcuts-intellij-5

Nosotros seleccionamos el stream, para que quede un código más funcional.

la-saga-mars-rover-shotcuts-intellij-6

Shortcut: Ctrl + Enter | Cmd + N

Generador de métodos de una clase

En nuestro caso hemos empleado este shortcut para generar los métodos equals, hashCode y toString.

la-saga-mars-rover-shotcuts-intellij-7

Rápido y sin errores, el resultado es maravilloso. El ahorro de tiempo y la ausencia de errores lo convierte en una herramienta muy potente.

la-saga-mars-rover-shotcuts-intellij-8

Shortcut: Shift + F6

Renombrar clases, variables y métodos

Aunque pueda parecer algo sencillo, (como cambiar el nombre de algo en tu código), puede resultar extremadamente arriesgado, ya que podemos tener usos en otras partes del proyecto de las que no somos conscientes. Sin embargo, con la ayuda del IDE, esta tarea se vuelve sencilla y segura. Al colocar el cursor sobre el elemento que deseamos renombrar y pulsar Shift + F6, podemos cambiar el nombre de manera segura, y el IDE se encargará de actualizar ese nombre en todos los lugares pertinentes. Confía en el IDE.

la-saga-mars-rover-shotcuts-intellij-9

La refactorización es rápida y efectiva, como se puede apreciar en la siguiente imagen:

la-saga-mars-rover-shotcuts-intellij-10

Shortcut: F6

Mover clases

Con este sencillo shortcut, vamos a ahorrar un tiempo muy valioso.

la-saga-mars-rover-shotcuts-intellij-11

Simplemente, seleccionamos las clases o records que deseamos incluir en un nuevo paquete, luego pulsamos F6 y se abrirá una ventana en la cual seleccionamos el nombre del paquete al cual queremos mover las clases o records. Finalmente pulsamos en Refactor.

la-saga-mars-rover-shotcuts-intellij-12

El paquete direction no existe, pero lo vamos a crear sobre la marcha. Pulsamos Yes y el IDE hace la magia.

la-saga-mars-rover-shotcuts-intellij-13

El resultado es perfecto, exactamente lo que queríamos y solo con un par de clics.

la-saga-mars-rover-shotcuts-intellij-14

Shortcut: Ctrl + Alt + L | Cmd + Alt + L

Formatear código

Para mantener nuestro código siempre ordenado de manera homogénea, utilizamos este shortcut. Es una forma rápida y segura de asegurar que todo el código en nuestro archivo se encuentre en el formato deseado.

la-saga-mars-rover-shotcuts-intellij-15

El resultado es evidente: legibilidad, orden, limpieza y, en definitiva, calidad de software.

la-saga-mars-rover-shotcuts-intellij-16

Shortcut: Ctrl + Alt + O | Cmd + Opti + O

Eliminar imports que no se utilizan

Este shortcut nos ayuda a eliminar los imports que ya no se utilizan cuando vamos realizando los refactors en nuestro código.

la-saga-mars-rover-shotcuts-intellij-17

Se puede observar el resultado claramente, el import de Territory ya no está.

la-saga-mars-rover-shotcuts-intellij-18

Shortcut: Shift + Shift

Buscar en toda la aplicación

Esta ventaja marca la diferencia. ¿Cuántas veces estás buscando algo en tu aplicación y no lo encuentras? De esta sencilla manera, se abrirá una nueva ventana en la que puedes escribir lo que estás buscando, y al instante, te mostrará un listado con todas las coincidencias. Realiza la búsqueda en toda la aplicación y te indica todas las instancias existentes. Con esto, ganarás mucha velocidad. Nosotros lo hemos usado mucho cuando no nos acordábamos de algún shortcut de refactoring por ejemplo.

la-saga-mars-rover-shotcuts-intellij-19

Shortcut: Ctrl + D | Cmd + D

Duplicar código

Si no tenemos ninguna parte de código seleccionado, este shortcut nos va a duplicar la línea completa donde se encuentre situado el cursor en el momento de ejecutarlo.

la-saga-mars-rover-shotcuts-intellij-20

Sencillo pero efectivo. Ahora, vamos a explorar otra utilidad para este maravilloso shortcut.

la-saga-mars-rover-shotcuts-intellij-21

Si tenemos parte de nuestro código seleccionado, este shortcut duplicará todo el contenido de la selección.

la-saga-mars-rover-shotcuts-intellij-22

Duplicamos nuestro test, para posteriormente realizar las modificaciones necesarias, con el fin de crear uno y probar el siguiente caso.

la-saga-mars-rover-shotcuts-intellij-23

Shortcut: Shift + Cursor

Selecciona porciones de código

Manteniendo pulsada la tecla Shift y desplazando el cursor con las flechas ⬅️⬆️➡️⬇️, seleccionamos la porción de código que deseamos.

Shortcut: Alt + Shift + Cursor | Opt + Shift + Cursor

Desplazar líneas completas de manera vertical

Manteniendo pulsadas las teclas Alt + Shift + Cursor | Opt + Shift + Cursor con las flechas ⬆️⬇️, desplazamos la línea de código completa a la posición que deseamos.

Shortcut: Alt + J | Ctrl + G

Multicursor

Este shortcut es especialmente útil. Permite crear múltiples cursores justo en la siguiente ocurrencia del texto donde se encuentra el cursor principal. Se van creando cursores de manera sucesiva cada vez que pulsamos Alt + J | Ctrl + G.

la-saga-mars-rover-shotcuts-intellij-24

Ayuda muchísimo a modificar varias concurrencias con facilidad y fiabilidad.

la-saga-mars-rover-shotcuts-intellij-25

Conclusión

El IDE es una herramienta super potente que, si aprendemos a utilizarla, puede darnos un plus como programadores. Nos proporciona velocidad para generar código y seguridad a la hora de generarlo y refactorizarlo. Aprender estos sencillos shortcuts nos puede ayudar en muchos aspectos a la hora de programar. Mi consejo es, apóyate en el IDE y serás mejor programador.

Publicado el 19/06/2024 por

¿Quieres más? te invitamos a suscribirte a nuestro boletín para avisarte cada vez que recopilemos contenido de calidad que compartir.

Si disfrutas leyendo nuestro blog, ¿imaginas lo divertido que sería trabajar con nosotros? ¿te gustaría?

Impulsamos el crecimiento profesional de tu equipo de developers