Qué diferencias tiene con la arquitectura de software? O dónde está su relación ?

Jairo Saul Salas Quiñones Pro-Dev | Sci-Tech

Jairo Saul Salas Quiñones Pro-Dev | Sci-Tech

Pregunta
studenthace 2 años

Qué diferencias tiene con la arquitectura de software? O dónde está su relación ?

4 respuestas
para escribir tu comentario
    Joaquín Jairo Ochoa Canela

    Joaquín Jairo Ochoa Canela

    studenthace 2 años

    Me gusto mucho la analogía de ver la arquitectura de software como el mapa de un centro comercial donde existen zonas como tiendas de ropa, jugueterías, comida, estacionamientos, etc. y como se comunican entre sí por medio de elevadores, escaleras, pasillos, todo distribuido con un sentido y orden, en software estas zonas serían las funcionalidades como seguridad, acceso a datos, creación de reportes, etc. Mientras que los patrones de diseño sirven para la creación de las funcionalidades por separado dando una estructura al codigo.

    Daniel Basulto

    Daniel Basulto

    teacherhace 2 años

    Hey Jairo, buena pregunta.

    Dentro del diseño, se encuentra el proceso de definir una arquitectura. Hay varios niveles de esta, cuando yo hablo de "Arquitectura" me refiero a una perspectiva de alto nivel de la app, por ejemplo: la app corre en Amazon/Google/Azure y usamos servicios que nos permiten manejar servidores, bases de datos, balanceadores de carga, y todo estos servicios orientados a un uso basado en microservicios.

    Otro "nivel" de arquitectura es el que usas a la hora de construir la aplicación de back/front, he leído sobre personas que se refieren a esto como "patron arquitectónico" de la app, por ejemplo: en el back de mi app esta hecha en node y estoy usando Nest.js, pero le hice unas modificaciones para que pueda aplicar Domain Driven Design (DDD), otro ejemplo seria, mi app de front esta hecha en Next.js y para dividir las responsabilidades de los diferentes elementos a usar (componentes, llamadas a la API a.k.a servicios, vistas) use una arquitectura basada en capas o una arquitectura hexagonal.

    Como puedes ver Jairo, la arquitectura es un proceso de diseño de naturaleza iterativa/evolutiva, el concepto de arquitectura es el mismo si lo usas para describir las diferentes capas de tu toda tu aplicación.

    Juan Castro

    Juan Castro

    teacherhace 2 años

    Los patrones de diseño son la forma en que se estructura el código de cualquier parte de tu aplicación (puedes usar unos patrones para el front, otros para el back...).

    La arquitectura de software es mucho más general. Se enfoca en cómo se comunican tooooodos los elementos de un mismo negocio (usamos un monolito o microservicios? necesitamos balanceadors de carga? cómo funcionarán las réplicas de la base de datos?).

Curso de Introducción a los Patrones de Diseño de Software

Curso de Introducción a los Patrones de Diseño de Software

Comprende y aplica patrones de diseño de software para crear soluciones eficientes. Aprenderás sobre las categorías creacionales, estructurales y de comportamiento, y su implementación usando programación orientada a objetos. Conoce cómo mejorar el diseño, reusabilidad y extensibilidad de tu código, y emplea UML para modelar relaciones entre clases. Implementa

Curso de Introducción a los Patrones de Diseño de Software
Curso de Introducción a los Patrones de Diseño de Software

Curso de Introducción a los Patrones de Diseño de Software

Comprende y aplica patrones de diseño de software para crear soluciones eficientes. Aprenderás sobre las categorías creacionales, estructurales y de comportamiento, y su implementación usando programación orientada a objetos. Conoce cómo mejorar el diseño, reusabilidad y extensibilidad de tu código, y emplea UML para modelar relaciones entre clases. Implementa