Want to create interactive content? It’s easy in Genially!
Mapa Mental
Layssa Gonzalez Guerra
Created on November 23, 2024
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Genial Calendar 2026
View
School Calendar 2026
View
January Higher Education Academic Calendar
View
School Year Calendar January
View
Academic Calendar January
View
Choice Board Flipcards
View
Comic Flipcards
Transcript
MVC (Modelo-Vista-Controlador)-Características: 1.-Separa la lógica de negocio, la interfaz y el flujo de datos. 2.-Mejora la escalabilidad y el mantenimiento del código. 3.-Facilita la reutilización de componentes. -Problemas de diseño: 1.-Puede ser complejo en aplicaciones pequeñas donde la división no aporta beneficios claros. 2.-Dependencias no deseadas entre capas si no se implementa correctamente. 3.-Puede requerir más tiempo y esfuerzo inicial para configurarse.
MVVM (Modelo-Vista-Modelo de Vista)-Características: 1.-Proporciona un enlace directo entre la interfaz de usuario y los datos (binding). 2.-Aumenta la reutilización de la lógica de la interfaz. 3.-Promueve la separación de responsabilidades. -Problemas de diseño: 1.-Complejo de implementar si no se cuenta con herramientas de binding (por ejemplo, LiveData en Android). 2.-Requiere mayor curva de aprendizaje para equipos nuevos. 3.-Puede llevar a un exceso de lógica en el ViewModel si no se gestiona bien.
Desarrollo Movil
Programación Web
Observer-Características: 1.-Permite que múltiples objetos sean notificados automáticamente cuando un objeto observado cambia de estado. 2.-Ideal para interfaces reactivas. -Problemas de diseño: 1.-Posible impacto en el rendimiento si hay muchos observadores. 2.-Dificultad para depurar si hay notificaciones circulares o estados inesperados. 3.-Puede aumentar la complejidad al manejar observadores dinámicos.
Singleton -Características: 1.-Garantiza una única instancia de una clase. 2.-Proporciona un punto global de acceso a esa instancia. 3.-Utilizado para recursos compartidos como conexiones a bases de datos o configuración global. -Problemas de diseño: 1.-Viola el principio de responsabilidad única si mezcla lógica adicional. 2.-Dificulta el testeo debido a su estado global. 3.-Puede derivar en dependencias ocultas, haciendo el código menos modular.
Lorem ipsum dolor sit
Adapter-Características: 1.-Proporciona una interfaz estándar para APIs o servicios en la nube. 2.-Simplifica el consumo de servicios con interfaces inconsistentes. -Problemas de diseño: 1.-Puede ser una sobrecarga si los servicios no requieren adaptación real. 2.-Aumenta la complejidad si se necesita adaptar múltiples interfaces diferentes.
Factory-Características: 1.-Permite crear objetos (como modelos de IA) sin especificar la clase exacta que se debe instanciar. 2.-Ideal para manejar configuraciones dinámicas de modelos. -Problemas de diseño: 1.-Puede llevar a una lógica de creación muy compleja si hay demasiadas configuraciones posibles. 2.-Si no se gestiona bien, puede dificultar la comprensión del código.
Lorem ipsum dolor
PATRONES DE DISEÑO
Servicios en la Nube
Inteligencia Artificial
Proxy-Características: 1.-Actúa como intermediario para controlar el acceso a un servicio, añadiendo capas como autenticación o caching. 2.-Mejora la seguridad y eficiencia. -Problemas de diseño: 1.-Puede ralentizar el sistema si el proxy introduce demasiada lógica adicional. 2.-Mayor esfuerzo inicial para configurar y gestionar.
Composite-Características: 1.-Organiza objetos en estructuras jerárquicas, como capas de redes neuronales. 2.-Facilita la composición y reutilización de componentes. -Problemas de diseño: 1.-Difícil de manejar si la jerarquía es demasiado profunda o compleja. 2.-Puede agregar una sobrecarga en términos de rendimiento
Strategy-Características: 1.-Permite definir diferentes estrategias de prueba que pueden cambiarse en tiempo de ejecución. 2.-Facilita pruebas flexibles para diferentes escenarios. -Problemas de diseño: 1.-Puede aumentar la cantidad de clases necesarias, lo que complica la estructura. 2.-Requiere una adecuada planificación para evitar redundancia entre estrategias.
Lorem ipsum dolor sit
Pipeline-Características: 1.-Divide un flujo de trabajo en etapas manejables y modulares. 2.-Fácil de reutilizar y probar cada etapa por separado. 3.-Mejora la legibilidad y estructura del código. -Problemas de diseño: 1.-Difícil de depurar si una etapa falla en un sistema complejo. 2.-Puede tener impacto en el rendimiento si hay demasiadas operaciones encadenadas.
-Refactoring Guru. (s.f.). Patrones de diseño: Singleton, Strategy, Observer, Factory, y más. Recuperado de https://refactoring.guru -FreeCodeCamp. (2021, 13 de mayo). Patrones de diseño de software: Una guía para principiantes. Recuperado de https://www.freecodecamp.org/news -GuiaPHP. (2020, 3 de noviembre). Comparación de patrones de diseño más utilizados en desarrollo de software. Recuperado de https://guiaphp.com -Funval International. (2018, 20 de abril). El patrón MVC: Separación de responsabilidades en el desarrollo web y móvil. Recuperado de https://funvalprogra.github.io
QA/Testing
Builder-Características: 1.-Facilita la creación de objetos complejos (como datos de prueba) de manera incremental y controlada. 2.-Mejora la legibilidad y la reutilización en pruebas automatizadas. -Problemas de diseño: 1.-Puede ser excesivo para datos simples o configuraciones básicas. 2.-La implementación inicial requiere mayor esfuerzo y tiempo.
Ciencia de Datos
Iterator-Características: 1.-Permite procesar grandes volúmenes de datos de forma incremental. 2.-Compatible con estructuras de datos grandes sin cargar todo en memoria. -Problemas de diseño: 1.-Más difícil de implementar cuando se requiere acceso bidireccional o aleatorio. 2.-Potencial de errores si el iterador cambia mientras se utiliza (problemas de concurrencia).