Cerrar

Agenda · Jornadas

Desmintiendo mitos de la transición energética

Desmintiendo mitos de la transición energética 

El viernes, 28 de junio de 2024

28 de junio en Alcoy

La Cámara Oficial de Comercio, Industria y Servicios ha programado para el próximo viernes 28 de junio (de 9:00 a 10:30) una jornada titulada «Desmintiendo mitos de la transición energética. Cómo...

Cámara de Comercio de Alcoy

Agenda · Jornadas

CV + i Health Day

CV + i Health Day 

El martes, 05 de noviembre de 2024

Investigación. innovación y emprendimiento en salud en la Comunitat Valenciana | 5 de noviembre en Valencia

CV+i es una iniciativa conjunta de la Dirección General de Innovación de la Generalitat Valenciana y la Red de Universidades Valencianas para el fomento de la I+D+i para fomentar la creación y...

Asociación RUVID

Actualidad · Convocatoria

CV+i Tourism Day 2024

CV+i Tourism Day 2024 

Presentación de candidaturas hasta el 11 de julio

CV+i es una iniciativa de la Generalitat Valenciana coordinada por la Red de Universidades Valencianas para el fomento de la I+D+i (RUVID) para impulsar la creación y consolidación de ecosistemas de...

Asociación RUVID

Actualidad · Convocatoria

Máster de Formación Permanente en Dirección y Gestión de la Sostenibilidad, Responsabilidad Social Corporativa y Aspectos ASG

Máster de Formación Permanente en Dirección y Gestión de la... 

Preinscripción al curso: Hasta el 20/09/2024

OBJETIVOS DEL CURSO El objetivo del curso es el de formar profesionales especializados en la gestión de la sostenibilidad, la responsabilidad social corporativa y los aspectos ASG. La persona...

Universitat de València. UV

Agenda · Jornadas

START UP: Receta Del Emprendimiento

START UP: Receta Del Emprendimiento 

El jueves, 27 de junio de 2024

¿Quieres emprender pero te surgen dudas? ¿Por dónde comenzar? ¿Cuáles son los pasos a seguir?

¿Quieres emprender pero te surgen dudas? ¿Por dónde comenzar? ¿Cuáles son los pasos a seguir? ¡Tranquilo! Jesús y Óscar de Asoc. Juvenil Alicante Emprende y Emprende Up, respectivamente, compartirán...

Asociación Juvenil Alicante Emprende

Agenda · Encuentros

Foro Seanergy 2024

Foro Seanergy 2024 

El miércoles, 26 de junio de 2024

Principal evento internacional sobre energías renovables marinas

Seanergy es el principal evento internacional de Francia sobre energías renovables marinas Desde 2016, y tras los resultados de las primeras licitaciones en Francia para la energía eólica marina,...

Agenda · Encuentros

Cumbre Mundial de Austria 2024

Cumbre Mundial de Austria 2024 

El jueves, 20 de junio de 2024

Emparejamiento B2B en línea

El 20 de junio, los héroes de la acción climática de todo el mundo se reunirán con Arnold Schwarzenegger en el Hofburg de Viena. Prepárese para una lista dinámica de invitados que abarcan política,...

Agenda · Webinar

CONTRATACIÓN PÚBLICA POR COMUNIDAD: CATALUÑA

CONTRATACIÓN PÚBLICA POR COMUNIDAD: CATALUÑA 

El miércoles, 03 de julio de 2024

DATABREAK SOBRE LAS LICITACIONES PÚBLICAS EN LA COMUNIDAD DE CATALUÑA

Inscripción ¿Has considerado mejorar tus habilidades para sobresalir en el mundo empresarial? Con los DataBreaks de Armilar y Vortal, ahora tienes la oportunidad de aprender a identificar...

Armilar Business Services, SL (Armilar)

Actualidad · Noticia

La Fábrica de Hobbies gana el prestigioso IF Social Impact Prize 2024

La Fábrica de Hobbies gana el prestigioso IF Social Impact... 

La empresa valenciana, La Fábrica de Hobbies ha ganado el prestigioso IF Social Impact Prize 2024 entre +1300 candidaturas a nivel mundial. Este premio está promovido por la International Forum...

Actualidad · Noticia

¿Qué son los hiperparámetros de ChatGPT y cómo utilizarlos para mejorar el rendimiento de ChatGPT?

¿Qué son los hiperparámetros de ChatGPT y cómo utilizarlos... 

Los Hiperparámetros de ChatGPT son ajustes y configuraciones específicos que te ayudan a obtener un mejor rendimiento en ChatGPT, que se traduce en re

Los hiperparámetros de ChatGPT son opciones de configuración que se establecen antes de iniciar el entrenamiento del modelo de inteligencia artificial. Estos parámetros internos de ChatGPT...

Actualidad · Convocatoria

El Ministerio de Ciencia, Innovación y Universidades convoca los Premios Nacionales de Innovación y de Diseño 2024

El Ministerio de Ciencia, Innovación y Universidades... 

Reconocimiento a la excelencia en innovación y diseño, con especial énfasis en jóvenes talentos y la participación femenina.

El Ministerio de Ciencia, Innovación y Universidades ha abierto la convocatoria para los Premios Nacionales de Innovación y de Diseño 2024, los galardones más importantes de España en estos ámbitos....

Agenda · Encuentros

Networking IDEA Alzira

Networking IDEA Alzira 

El miércoles, 10 de julio de 2024

"Haz marca y vende a través de redes sociales. El caso de Gnomo" a cargo de Álvaro.

Desde IDEA Alzira organizan la Jornada Networking IDEA Alzira. La sesión está focalizada en hacer marca y en cómo vender a través de redes sociales con el caso real de Gnomo, la tienda de regalos...

IDEA Alzira · Agencia Desarrollo Local Ayuntamiento de Alzira

Por qué utilizar una Clean Architecture

clean

Se conocen así, porque todas ellas se basan en el mismo principio de diseño de software: la separación de responsabilidades.

MyTaskPanel Consulting

MyTaskPanel Consulting

Publicado el martes, 22 de noviembre de 2022 a las 08:45

Hoy en día, en el mundo del software, se usan mucho las llamadas Clean Architecture. Se conocen así, porque todas ellas se basan en el mismo principio de diseño de software: la separación de responsabilidades. Una de las más conocidas es la arquitectura hexagonal, pero hay otras tantas. En esta ocasión, te contamos lo que necesitas saber para entender cuándo y por qué utilizar una Clean Architecture.

 

Partes o niveles de una Clean Architecture

– Infraestructura: son los elementos externos con los que se comunica la aplicación, tanto de entrada como de salida:

  • Puntos de entrada: una API con REST o GraphQL, mensajería con RabbitMQ o mediante línea de comandos, etc.
  • Puntos de salida: una base de datos relacional con PostgreSQL, no relacional con MongoDB, o también envío de mensajes con RabbitMQ, etc.

– Application/Use Cases: se trata de la evaluación de reglas de negocio y toma de decisiones. Contienen las reglas que le dan sentido a la aplicación. Los casos de uso dirigen el flujo a las entidades y las orquestan para cumplir con el negocio.

– Domain: responde al modelo de datos de la aplicación, servicios de dominios, interfaces, etc. Las entidades son los modelos definidos que interactúan en el sistema; deben ser lo suficientemente abstractas para ser usadas por múltiples aplicaciones en el negocio.

 
Principios de Clean Architecture
 
1. Independiente de cualquier framework

La arquitectura limpia debe ser capaz de aplicarse a cualquier sistema, sin importar el lenguaje de programación o las librerías que utilice. Las capas deben quedar tan bien separadas que puedan sobrevivir de forma individual, sin necesidad de externos.

2. Apto para testeos

Cuanto más pura sea una función, una clase o un módulo (es decir, que no tenga efectos colaterales), más fácil será predecir el resultado que se va a obtener. Cada módulo, tanto de UI, base de datos, conexión a API Rest, etc., se debe poder testar de manera individual.

3. Independiente de la interfaz de usuario (UI)

Uno de los componentes que sufre cambios de forma constante es la interfaz de usuario. La UI debe ser capaz de cambiar sin alterar todo el sistema. Si vamos más allá, esta capa debería vivir tan independiente como para ser desensamblada y sustituida por otra. Por ejemplo, que se pueda cambiar una UI Móvil por una en modo consola.

4. Independiente de la base de datos

Como en el punto anterior, esta capa debe ser tan modular como para agregarle múltiples fuentes de datos e, incluso, múltiples fuentes del mismo tipo de datos. Por ejemplo, manejar varias bases de datos como MySQL, PostgreSQL, Redis, etc.

5. Independiente de cualquier elemento externo

Si en algún punto de tu sistema necesitas de una librería, otro sistema o cualquier elemento por conectar, debería ser fácilmente ensamblado y modularizado. De hecho, para el sistema, esta capa externa debería ser transparente.

 

Ventajas de emplear una Clean Architecture

Esta tecnología es ideal cuando tienes un proyecto a largo plazo. Si necesitas que perdure en el tiempo, que lo puedas testear con facilidad y alta tolerancia al cambio, que puedas minimizar el impacto de estos cambios, aprovecha los beneficios de esta clase de arquitectura:

1- Implementación inmediata

Puedes implementarla con cualquier lenguaje de programación, entre los que citamos: Java, .Net, Php, Node.js, etc.

2- Foco en el dominio de la aplicación

Esto significa que se coloca el foco primario del proyecto en el núcleo y la lógica del dominio.

3- Posibilidad de cambios

Esta arquitectura permite realizar cambios importantes en la aplicación, sin grandes impactos:

  • Podrías cambiar el framework utilizado en caso de ser necesario, ya que está todo desacoplado. 
  • Podrías, además, cambiar la base de datos que uses o agregar alguna otra si la necesitas.
4- Testeo esperado

Tienes la oportunidad de testear de manera rápida y fácil. Podrías realizar test unitarios de cada una de las capas y test de integración de las diferentes capas entre sí, pudiendo reemplazarlas por objetos temporales que simulen su comportamiento de forma sencilla.

5- Resultado óptimo

Crearás un producto sólido, de calidad y escalable.

Ahora bien, si quieres realizar un producto mínimo viable (PMV), te recomendamos que evites estos tipos de arquitectura. Tardarás demasiado, y requerirá de un costo y esfuerzo innecesarios. Si ese PMV funciona y necesita de un desarrollo más potente y avanzado, las Clean Architecture seguro podrán ayudarte.

Clean Architecture y Domain-Driven Design

Las Clean Architecture encajan muy bien con el enfoque de Domain-Driven Design (DDD). Pero, ¿qué relación tienen estas arquitecturas limpias con DDD?

Al ser una arquitectura que fomenta que nuestro dominio sea el núcleo de todas las capas, y que no se acople a nada externo, funcionan perfecto juntos. Podríamos decir que DDD se basa en una clean architecture como pilar central en términos de arquitectura.

 

Ahora que conoces cuándo y por qué utilizar una Clean Architecture, podrás definir si es la mejor opción para tu proyecto. En MyTaskPanel Consulting, contamos con profesionales de calidad que tienen experiencia en el tema y podrán ser el apoyo tecnológico que necesitas. Consúltanos sin compromiso aquí.

4.845 visitas

Utilizamos cookies propias y de terceros para ofrecerte toda la funcionalidad y una mejor experiencia, obtener estadísticas de tráfico, analizar el uso de la web y mejorar nuestros servicios.
Tienes disponible aquí nuestra política de cookies.
Puedes aceptar todas nuestras cookies pulsando el botón 'ACEPTAR' o configurar aquí tus preferencias.

Estrictamente necesarias +

Estas cookies son necesarias ya que permiten que el sitio web funcione correctamente, no se pueden desactivar.

Estadísticas +

Son las cookies que utilizamos exclusivamente con fines estadísticos para poder analizar cómo los usuasrios hacen uso de la web. Recopila información anónima tal como el número de visitantes del sitio, o las páginas más populares. Activar estas cookies nos permite seguir mejorando.

Funcionales +

Estas cookies son necesarias para el intercambio y presentación de contenidos de plataformas externas como youtube o de redes sociales como facebook, twitter o linkedin.

Marketing y publicidad +

Estas se utilizan para crear perfiles de usuario y analizar la efectividad de campañas publicitarias o para rastrear al usuario en un sitio web o en varios sitios web con fines de marketing similares..

GUARDAR AJUSTESACEPTO