43

Cómo mejorar una app sin romperla

59123Puntos

hace 4 años

Recientemente encontramos más menciones acerca de Clean Architecture o Arquitectura Limpia y la importancia de su implementación al desarrollar software ¿pero de dónde viene o por qué se ha estado volviendo tan popular?

Conociendo al Tío Bob

Robert Cecil Martin (Uncle Bob para los amigos) es un ingeniero de software y autor de libros. Entre sus obras destacan Clean Code: A Handbook of Agile Software Craftmanship (2009), además de los principios 5 principios SOLID de la Programación Orientada a Objetos. Él Tío Bob se encargó de compartir sus conocimientos y como era de imaginarse encontramos dicho término en su obra Clean Architecture: A Craftsman’s Guide to Software Structure and Design (2011).

La trascendencia de sus aportes fueron tales que hay empresas que consideran sus buenas prácticas como un deber ser, llevándolas a la implementación de sus proyectos o incluso de sus procesos de contratación en las pruebas técnicas donde si no las conoces y cumples al pie de la letra simplemente estás fuera.

Por supuesto, esto es llegar a un extremo porque las buenas prácticas de ayer y hoy se volverán obsoletas mañana. Algunas de las enseñanzas del Tío Bob ya no se encuentran vigentes no por ser malas sino porque se han desarrollado técnicas más efectivas. Recordemos que la industria del software no pasa un solo día sin cambiar además de que cada lenguaje tiene sus particularidades.

Qué es la arquitectura hexagonal

¿Cómo afecta esto a mi trabajo?

Al momento de estar desarrollando software quizá comenzaste escribiendo código, probando que funcionara, corrigiendo y avanzando. Si te dedicas profesionalmente a ello es probable que ahora lo hagas bajo una metodología, estándares o algún patrón de diseño que el equipo de trabajo a elegido como el apropiado.

En ocasiones puede que trabajes sobre un proyecto ya desarrollado y al ver su código tengas el pensamiento de ¿Qué rayos es esto? ¿quién lo hizo?.. Sería mejor que reconstruyamos desde cero lo cual podría sonar lógico, sin embargo es justo lo que pensaría un desarrollador novato.

Poder abstraer la complejidad del código ya escrito para llevarlo a un modelo de buenas prácticas o patrón de diseño no solo requiere de fuerza de voluntad sino capacidad de encontrar patrones en el código para restructurarlo y que su funcionamiento siga intacto. Sin duda esto implica experiencia como desarrollador, incluso puede marcar la diferencia entre ser junior y un nivel de habilidad mayor.

Lleva esto a tus proyectos de Android

En el caso de Clean Architecture significa dividir el código en 4 capas distintas (entidades, de uso, adaptadores de interfaz y frameworks/controladores) para ofrecer una mejor estructura a nivel de proyecto, mayor interdependencia entre módulos y una mayor comprobabilidad. Claro, si el proyecto es pequeño quizá solo vuelvas las cosas más complejas.

Al final lo que lograrás es tener un producto que siga funcionando de la misma forma e incluso puede que mejore en su rendimiento, ejemplo de ello es la app móvil de Platzi donde hubo un cambio de arquitectura.

La buena noticia es que el 23 de septiembre tendrás disponible un curso para aplicarlo a las apps que estés desarrollando, donde tu proyecto será trabajar en un proyecto ya desarrollado y migrar cada una de sus partes a las capas correspondientes de Clean Architecture.

¿Te mides al reto de refactorizar una app sin romperla?

Héctor Daniel
Héctor Daniel
Terranigma

59123Puntos

hace 4 años

Todas sus entradas
Escribe tu comentario
+ 2
Ordenar por:
4
23365Puntos

Otro buen libro del Uncle Bob que recomiendo es Clean Coder, el cual es un código de conducta que debe tener un desarrollador en entornos profesionales, como responder a tu entorno, saber decir sí, y saber cuándo decir que no 😉

1
59123Puntos
4 años

Así es, un gran libro que si bien no tiene nada de código complementa muy bien las soft-skills del desarrollador. Algo que abordamos en nuestra Escuela de Crecimiento Profesional.

3
40739Puntos

Este curso lo dará la profesora Anahí? He visto en su blog que ha estado investigando por varios meses el tema. Estoy muy ansioso!

1
7422Puntos

Que blog post tan genial.