
Los seres humanos son quienes escriben el software y los programas ejecutables, por lo que es lógico que contengan errores. Los programadores de software utilizan pruebas manuales o automatizadas para detectarlos, pero a veces se pasa por alto un recurso: la capacidad de ver y corregir errores por uno mismo. Vamos a ver cómo hacerlo con las Code Reviews
Por supuesto, es bastante difícil detectar un error en nuestro propio trabajo, pero, ¿qué sucede si un programador de nuestro mismo (o superior) nivel de experiencia revisa nuestro código? Así, el code review o la «revisión de código entre pares» es el acto de compartir el propio trabajo para verificar errores en nuestro código.
Se ha demostrado que esta práctica acelera y agiliza el proceso de desarrollo de software.
Revisión de código: una introducción
El code review como concepto surgió en 1976, con el artículo «Diseño e inspecciones del código para reducir errores en el desarrollo de programas», escrito por Michael Fagan. Las revisiones de código entre pares bien ejecutadas ahorran tiempo y aceleran el proceso de desarrollo, reduciendo la cantidad de trabajo requerido por el equipo de QA. También ahorran dinero, ya que detectan errores que pasan desapercibidos en las pruebas y que luego, por falta de análisis, llegan a los usuarios finales.
Además, las code reviews brindan el beneficio adicional de construir un patrón de amistad y camaradería entre los equipos de programadores. También ayudan a difundir el sentido de «propiedad» del código. Los programadores más jóvenes también ganan experiencia cuando su código es revisado por programadores más experimentados.
Las revisiones de código no solo detectan problemas: permiten obtener un código más limpio, resolver problemas comunes e identificar muchos problemas como pérdidas de memoria, desbordamientos de búfer o cuellos de botella en la escalabilidad.
Diversos métodos y enfoques
La revisión de código ha evolucionado hasta hoy en día desde un grupo de programadores integrados en una habitación hasta sistemas organizacionales mucho más sofisticados:
Revisión por correo electrónico
Como una parte del código está lista, se envía por correo electrónico a los revisores como un archivo que cada par revisa cuando su carga de trabajo lo permite. Este sistema es flexible y adaptable, y genera una serie de opiniones y sugerencias que el programador original debe organizar e incorporar a su código.
Programación y revisión entre pares
En este enfoque, los desarrolladores de software trabajan codo a codo en el código, verificando la codificación de sus socios al mismo tiempo. Es una excelente oportunidad, para los programadores novatos, de trabajar con los más experimentados. Aunque se usa ampliamente, tiene la desventaja de que consume más recursos en términos de tiempo y personal que otros métodos.
Revisión única sobre producto acabado
Más cómoda para muchos que la revisión por pares, la revisión única es una de las formas de revisión de código más antiguas y más utilizadas. Para ello, el programador busca un revisor tan pronto como termine el código, y luego ambos discuten la lógica detrás de cada parte del programa. Su defecto: falta de variedad de opiniones. Su ventaja: más rápida de implementar.
Revisión asistida con herramientas
En este método moderno, el código se revisa a través de herramientas integradas en los marcos de desarrollo estándar IDE y SCM. Estas herramientas resuelven muchas de las limitaciones de los enfoques anteriores, ya que permiten rastrear los comentarios y las soluciones propuestas de una manera más clara y coherente.
Este método permite revisiones asincrónicas y subcontratadas, sin reuniones innecesarias. También queda un rastro de las revisiones que permite el análisis estadístico y las auditorías para mejorar el propio proceso de revisión y generar informes de calidad.
Independientemente del método de revisión por pares utilizado, la revisión de código es un componente importante del plan de QA de cualquier equipo de creación de software. La revisión de código por pares erradica los errores justo antes de que aparezcan e incluso evita futuros problemas de evolución del producto.
Las code reviews de Rviewer, by GetWith
Para acabar, os queremos hablar de nuestro enfoque personal de las code reviews. En GetWith hemos montado una plataforma para devs en la que estos puedes evaluarse por diferentes lenguajes de programación y frameworks, y conseguir trabajo con ello. Al darte de alta podrás crear un perfil y acceder a tu propio dashboard.
Desde él, podrás empezar uno de nuestros variados Challenges y medir tus habilidades. A cambio, recibirás un completo report que podrá servirte como prueba técnica de acceso a posiciones abiertas con empresas tech.
Son muchas las ventajas que ofrece nuestro entorno de code reviews:
- Participarás en una comunidad y podrás comparar tus resultados con los de otros developers, compartir soluciones y aprender mientras buscas trabajo.
- Nuestros Challenges han sido creados por especialistas del sector, nuestros Tech Mentors. Ellos te acompañarán a lo largo del proceso de evaluación.
- Podrás añadir a la resolución del Challenge una defensa en vídeo, audio o texto con explicaciones y comentarios.
- Recibirás un report con una completa code review de tus skills y feedback por parte del tech mentor.
- Al estar evaluado por determinados lenguajes de programación, tendrás la posibilidad de acceder a ofertas de trabajo.
Mola, ¿no? ¡Descúbrelo aquí!