AppChat es una aplicación de mensajería instantánea desarrollada en Java que permite a los usuarios comunicarse entre sí, gestionar contactos y grupos, y acceder a funcionalidades premium como la exportación de conversaciones en formato PDF.
- Registro de nuevos usuarios
- Inicio de sesión con número de teléfono y contraseña
- Personalización de perfil (cambio de imagen y mensaje de saludo)
- Añadir contactos individuales
- Crear grupos de contactos
- Envío de mensajes de texto a usuarios individuales
- Envío de mensajes a grupos, como una lista de difusión
- Envío de emojis
- Filtrado por texto contenido en el mensaje
- Filtrado por contacto
- Filtrado por teléfono
- Combinación de múltiples filtros
- Activación de cuenta Premium mediante pago (simulado)
- Descuentos según fecha de registro o número de mensajes enviados
- Exportación de chats a PDF
La aplicación sigue el patrón de arquitectura Modelo-Vista-Controlador (MVC):
- Modelo: Clases que representan las entidades del dominio (Usuario, Contacto, Mensaje, etc.)
- Vista: Interfaces gráficas desarrolladas con Swing
- Controlador: Clase principal AppChat que gestiona la lógica de negocio
src/main/java: Código fuente de la aplicaciónumu.tds.apps.controlador: Controladores de la aplicaciónumu.tds.apps.modelo: Clases del modelo de dominioumu.tds.apps.persistencia: Clases para la persistencia de datosumu.tds.apps.resources: Recursos de la aplicación (imágenes, iconos)umu.tds.apps.vista: Interfaces gráficas de usuarioumu.tds.apps.vista.customcomponents: Componentes personalizados para la UI
