PROGRAMACION VISUAL
Grupo #2
INTEGRANTES:
• JOSTIN LEONARDO ALMEIDA ROMERO
• JOSÉ ANTONIO ALVARÉZ GARCIA
• LILIANA MARIA CHAGUAY AROCA
• DIANELA ALEJANDRA TORRES CHAVEZ
Patrones de diseño en la programación visual
Los Patrones de diseño en la programación visual son soluciones generales a problemas
comunes que se encuentran al diseñar interfaces de usuario o sistemas interactivos. Estos
patrones ofrecen una forma estandarizada de abordar problemas de diseño, lo que
permite a los desarrolladores crear interfaces coherentes y eficientes. Algunos ejemplos de
patrones de diseño visual incluyen el patrón de diseño de la barra de navegación, el patrón
de diseño de la lista desplegable y el patrón de diseño de la tarjeta.
PATRONES DE DISEÑO MAS UTILIZADOS EN LA PROGRAMACION VISUAL
• Modelo-Vista-Controlador (MVC):* Este patrón separa la aplicación en tres componentes
principales: el Modelo (que representa los datos y la lógica de negocio), la Vista (que
muestra la interfaz de usuario) y el Controlador (que maneja las interacciones del usuario y
actualiza el Modelo y la Vista según sea necesario).
• Modelo-Vista-Presentador (MVP):* Similar al MVC, pero con una separación más clara entre
la lógica de presentación y la lógica de negocio. El Presentador actúa como un intermediario
entre la Vista y el Modelo, manipulando los datos y actualizando la Vista en consecuencia.
• Modelo-Vista-ViewModel (MVVM):* Este patrón también separa la lógica de presentación
del Modelo, pero introduce un componente adicional llamado ViewModel. El ViewModel
actúa como un adaptador entre el Modelo y la Vista, proporcionando datos formateados y
acciones que la Vista puede usar directamente
Iterator:
Es un patrón de diseño de comportamiento que permite el recorrido secuencial por una
estructura de datos compleja sin exponer sus detalles internos.
Características:
Un objeto iterator encapsula todos los detalles del recorrido, Como la posición actual y
cuántos elementos quedan hasta el final. Debido a esto, varios iteradores pueden recorrer
la misma colección al mismo tiempo, independientemente los unos de los otros.
Ejemplo en la vida cotidiana:
El patrón Iterador se parece mucho al concepto de tener un grupo de gente a los cuales
vamos atendiendo uno a uno. Preguntamos primero si hay alguien que atender y en el caso
de que haya alguien solicitamos que pase esa persona de una en una.
En este caso el médico ha atendido a dos personas y le queda tres pacientes por atender.
Ejemplo en la programación:
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
// Creamos una lista de nombres
List<String> nombres = new ArrayList<>();
nombres.add ("Juan");
nombres.add ("Maria");
nombres.add ("Pedro");
nombres.add ("Ana");
// Usamos un bucle for convencional para recorrer la lista e imprimir los nombres
for (int i = 0; i < nombres.size(); i++) {
String nombre = nombres.get(i);
System.out.println(nombre);
}
}
}
Pros y contras:
✓ Puedes implementar nuevos tipos de colecciones e iteradores y pasarlos al código
existente sin descomponer nada.
✓ Puedes recorrer la misma colección en paralelo porque cada objeto iterador
contiene su propio estado de iteración.
✓ también, puedes retrasar una iteración y continuar cuando sea necesario.
Aplicar el patrón puede resultar excesivo si tu aplicación funciona únicamente con
colecciones pequeñas y sencillas.
Utilizar un iterador puede ser menos eficiente que recorrer directamente los elementos
de algunas colecciones especializadas.
Conclusiones:
En resumen, los iteradores en Java son una herramienta fundamental para recorrer y
manipular colecciones de manera segura y eficiente, ofreciendo flexibilidad y funcionalidades
específicas según el tipo de estructura de datos que se esté utilizando.