Cerrar

Actualidad · Entrevista

"Hay que cambiar el concepto de pueblo como destino de vacaciones"

"Hay que cambiar el concepto de pueblo como destino de... 

Mario Sierra, soldador y fundador de Rural Metal

Mario Sierra es soldador y fundador de Rural Metal. El 9 de mayo participará en Aras de los Olmos en el evento empresarial Focus Pyme y Emprendimiento Emprender en el rural. Larga vida al (nuevo)...

Centro Europeo de Empresas e Innovación de Valencia

Agenda · Webinar

Conoce Órbita y resuelve dudas con el equipo directivo

Conoce Órbita y resuelve dudas con el equipo directivo 

El jueves, 02 de mayo de 2024

¿Quieres saber cómo es participar en la aceleradora Órbita?   En esta sesión explicamos cómo Órbita puede ayudar a tu startup, pero sobre todo es una sesión interactiva para que las startups...

Centro Europeo de Empresas e Innovación de Castellón (CEEI Castellón)

Agenda · Webinar

Cómo crear y escalar una marca nativa digital en 2024

Cómo crear y escalar una marca nativa digital en 2024 

El martes, 30 de abril de 2024

Pasar de ser desapercibido a valorado en millones Traemos un Orbita Live en el que veremos las claves para crear y escalar negocios digitales, uno de los entornos más cambiantes y que más tendencia...

Centro Europeo de Empresas e Innovación de Castellón (CEEI Castellón)

Agenda · Webinar

Inteligencia Artificial para startups

Inteligencia Artificial para startups 

El jueves, 25 de abril de 2024

¿Cómo decidir cuándo aplicar la Inteligencia Artificial y cuándo no? ¿Qué problemas se pueden resolver con IA? Te traemos un Orbita Live que resuelve estas dos cuestiones fundamentales, pero donde...

Centro Europeo de Empresas e Innovación de Castellón (CEEI Castellón)

Actualidad · Artículo

Impacto de la Ley de Registro Horario en las Empresas Españolas

Impacto de la Ley de Registro Horario en las Empresas... 

Cumplimiento y Tecnología

La introducción del Real Decreto Ley 8/2019, publicado el 12 de marzo de 2019 en el Boletín Oficial del Estado (BOE), marcó un cambio significativo en la forma en que las empresas en España gestionan...

Agenda · Jornadas

Tendencias Gastronómicas que marcarán el 2024

Tendencias Gastronómicas que marcarán el 2024 

El lunes, 29 de abril de 2024

Objetivo Este año , la gastronomía y el mundo hostelero se orientan hacia una serie de claves muy marcadas, basadas sobre todo en la búsqueda de un equilibrio entre la naturaleza, la sostenibilidad...

Cámara de Comercio de Alicante

Agenda · Cursos

Programa Pice 2024: Marketing y comunicación digital

Programa Pice 2024: Marketing y comunicación digital 

El miércoles, 24 de abril de 2024

Inscripciones hasta el 22 de abril

Curso dirigido a jóvenes, entre 16 y 29 años, y buscas empleo vamos a enseñarte las herramientas para diseñar y ejecutar un Plan de Marketing Digital para desarrollar y aplicar en las empresas con...

Lab_Nucía

Agenda · Cursos

Redes sociales y marketing agroalimentario en Cocentaina

Redes sociales y marketing agroalimentario en Cocentaina 

El martes, 23 de abril de 2024

Curso técnico de especialización

Curso técnico de especialización "Redes Sociales y Marketing Agroalimentario" PROGRAMA: Día 23/04/24  16: 00 a 17:00 h: INTRODUCCIÓN AL MARKETING AGROALIMENTARIO: tendencias actuales en el mercado...

Actualidad · Noticia

CEEI Valencia incubará 20 proyectos en la primera edición de ‘Incibe Emprende’

CEEI Valencia incubará 20 proyectos en la primera edición... 

Ha arrancado el programa de incubación al que se han presentado más de 60 ideas de negocio

Un total de veinte proyectos han dado este jueves el pistoletazo de salida a la primera edición de ‘INCIBE Emprende’, una iniciativa con la que el Centro Europeo de Empresas e Innovación de Valencia...

Centro Europeo de Empresas e Innovación de Valencia

Agenda · Jornadas

Jornada "Tributación del Alquiler Turístico y Vacacional"

Jornada "Tributación del Alquiler Turístico y Vacacional" 

El miércoles, 08 de mayo de 2024

D. Óscar García Sargues, Técnico de Hacienda. Jefe de Sección de IRPF de la Administración de Catarroja. Asociado de Honor 2018.

Información - Inscripción

Actualidad · Convocatoria

Convocatorias de propuestas LIFE 2024

Convocatorias de propuestas LIFE 2024 

financiación de 571 millones de euros

Abierta convocatorias de propuestas LIFE 2024 y queremos escuchar sus ideas para conservar la naturaleza, proteger el medio ambiente, tomar medidas climáticas y hacer la transición de Europa hacia la...

Agenda · Jornadas

Retención y engagement: métricas clave para hacer crecer tu start-up

Retención y engagement: métricas clave para hacer crecer tu... 

El jueves, 09 de mayo de 2024

Se verán y analizarán las diferentes métricas clave que deben tener los negocios

El control y la gestión de métricas es uno de los aspectos más importantes para hacer crecer una start-up. En esta sesión se verán y analizarán las diferentes métricas clave que debe de tener los...

PARQUE CIENTÍFICO DE LA UMH DE ELCHE

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.477 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