Entradas

PATRONES DE DISEÑO ESTRUCTURAL

Imagen
Los patrones de diseño estructural son un tipo de patrón de diseño que se centran en cómo los objetos y las clases se combinan para formar estructuras más grandes. Estos patrones ayudan a los desarrolladores a diseñar sistemas de software más flexibles, escalables y mantenibles. Ilustracion 1.- Patrón de diseño estructural 1.-Adapter El patrón de diseño Adapter permite que dos clases que no son compatibles entre sí se comuniquen. El adaptador actúa como una interfaz entre las dos clases, convirtiendo las llamadas de una clase a un formato compatible con la otra. EJEMPLO Una aplicación de comercio electrónico podría utilizar el patrón Adapter para permitir que un cliente utilice un dispositivo móvil para realizar una compra. El adaptador traduciría las entradas del dispositivo móvil a un formato compatible con el sistema de pedidos de la aplicación. VENTAJAS Permite que dos clases que no son compatibles entre sí se comuniquen. Hace que el código sea más flexible y extensible. Reduce...

PATRONES DE DISEÑO EMERGENTES

Imagen
1.- MVC Es un patrón de diseño que se utiliza comúnmente en el desarrollo de software para organizar y estructurar el código de manera más eficiente. Este patrón ayuda a separa en tres componentes principales: Modelo, Vista y Controlador. MODELO :  Se encarga de manejar la manipulación de datos, la lógica de negocio y cualquier otra tarea relacionada con la gestión de información.  VISTA:   La Vista es responsable de la presentación de la información al usuario y de la interfaz de usuario. CONTROLADOR:  Gestiona las interacciones del usuario, interpreta las acciones del usuario y traduce estas acciones en operaciones en el Modelo o en la Vista. Ilustración 1: Modelo Vista Controlador VENTAJAS Separación de preocupaciones: Organiza el código en componentes para una fácil gestión. Reutilización de código: Permite la reutilización de componentes en diferentes partes de la aplicación. Facilita el desarrollo concurrente: Diferentes equipos pueden trabajar simultáneam...

MODELADO DE ARQUITECTURA DE SOFTWARE

Imagen
LENGUAJES DE DESCRIPCIÓN DE ARQUITECTURA 1.- UML: Es un lenguaje de modelado estandarizado que consta de un conjunto integrado de diagramas, desarrollado para ayudar a los desarrolladores de sistemas y software a especificar, visualizar, construir y documentar los artefactos de los sistemas de software, así como para el modelado de negocios y otros sistemas que no son software . 2.- BPMN:   Un modelo y notación de procesos de negocio (BPMN) estándar brindará a las empresas la capacidad de comprender sus procedimientos comerciales internos en una notación gráfica y brindará a las organizaciones la capacidad de comunicar estos procedimientos de manera estándar.  Además, la notación gráfica facilitará la comprensión de las colaboraciones de desempeño y las transacciones comerciales entre las organizaciones. 3.- ARCHIMATE :  es un lenguaje de arquitectura enterprise del estándar abierto del Grupo Abierto, basados en el estándar IEEE 1471. Ofrece un lenguaje común para descri...

ARQUITECTURA DE MICROSERVICIOS

Imagen
La arquitectura de microservicios es como una forma de construir aplicaciones de software en la que, en lugar de tener un solo programa grande, tienes muchos pequeños programas independientes. Cada uno de estos pequeños programas hace una tarea específica y puede estar escrito en un lenguaje de programación diferente. Estos programas se comunican entre sí a través de reglas que les permiten trabajar juntos, y cada uno tiene su propio lugar para guardar la información que necesita. Esto hace que la aplicación sea más eficiente y menos propensa a errores o caídas. Ilustracion 1: Arquitectura de Microservicios vs Arquitectura Monolitica Ventajas: Modularidad: En lugar de una gran aplicación, los microservicios son como piezas independientes que se pueden desarrollar y desplegar por separado. Si un servicio tiene un problema, no afecta a los otros. Escalabilidad: Puedes hacer crecer cada parte de la aplicación según lo necesites. Si un componente necesita más poder de procesamiento, pue...

ARQUITECTURA CLIENTE-SERVIDOR

Imagen
En una arquitectura Cliente-Servidor existe un servidor y múltiples clientes que se conectan al servidor para recuperar todos los recursos necesarios para funcionar, en este sentido, el cliente solo es una capa para representar los datos y se detonan acciones para modificar el estado del servidor, mientras que el servidor es el que hace todo el trabajo pesado. Ilustración 1: Modelo Cliente-Servidor CARACTERISTICAS DE LA ARQUITECTURA CLIENTE-SERVIDOR El cliente suele ser instalado en computadoras con bajos recursos. El servidor puede atender simultáneamente a varios clientes. Está compuesto por dos componentes, el proveedor y el consumidor. Permite centralizar los datos, almacena todo lo que recibe de los diferentes clientes. Se comunican únicamente por medio de la RED o Internet. El servidor será la única entidad que tendrá acceso a los datos y los servirá solo a los clientes del cual el confía EJEMPLOS DE APLICACIONES QUE OCUPAN ESTA ARQUITECTURA CLIENTE-SERVIDOR La arquitectura de so...