Ir ao contido principal
AV
  • Inicio
  • Calendario
  • Máis
Galego ‎(gl)‎
English ‎(en)‎ Español - Internacional ‎(es)‎ Galego ‎(gl)‎
Neste momento está usando o acceso para convidados
Acceder
AV
Inicio Calendario
Expandir todo Contraer todo
  1. Taboleiro
  2. DI - 2DAM - 2526
  3. Unidade 03
  4. UD03A01_AgendaTelefonica (MVC)

UD03A01_AgendaTelefonica (MVC)

Requisitos do completado
Abertas: luns, 12 de xaneiro de 2026, 12:00 AM

Enunciado de la tarea: Agenda telefónica (MVC)

Descripción general

Basándote en la tarea UD02A03 – Agenda telefónica desarrollada en la Unidad 2, realiza las modificaciones necesarias para adaptar la aplicación al patrón Modelo–Vista–Controlador (MVC) utilizando JavaFX con FXML y Scene Builder.

El objetivo es mejorar la organización, la mantenibilidad y la reutilización del código, aplicando una correcta separación de responsabilidades y buenas prácticas de desarrollo en JavaFX.

Requisitos obligatorios

1) Aplicación del patrón MVC

Deberás:

  • Separar claramente la aplicación en:
    • Vista (FXML)
    • Estilos (CSS)
    • Controlador (Controller)
    • Modelo (Model)
    • Aplicación principal (Main)
  • Implementar la vista mediante un archivo FXML, que contenga únicamente la definición de la interfaz gráfica (sin lógica).
  • Crear un controlador que:
    • gestione los eventos de la interfaz (onAction, etc.),
    • y realice la interacción con el modelo.
  • Desarrollar un modelo (AgendaModelo) que encapsule:
    • los datos de la agenda,
    • y la lógica, incluyendo la comprobación de duplicados (por ejemplo: contacto ya existente).
  • Adaptar la clase principal para que:
    • se limite a cargar el FXML con FXMLLoader,
    • y muestre la interfaz en el Stage,
    • sin incluir lógica de presentación ni lógica de negocio.

2) Estilos con CSS externo

Extrae todos los estilos visuales a un archivo CSS externo llamado:

Agenda.css

La aplicación deberá enlazar este CSS al FXML correspondiente. 

Los estilos a aplicar son los indicados en la tarea UD02A03

Configuraciones que NO se pueden (o no conviene) hacer con CSS

Ten en cuenta que hay propiedades que no son estilo, sino layout (propiedades del nodo). Por tanto, se deben configurar en Scene Builder (Inspector > Properties) o en código:

  1. Espaciado entre paneles → HBox spacing = 20

  2. Espaciado entre componentes → VBox spacing = 10

  3. Alineación → Pos.TOP_LEFT, Pos.TOP_CENTER, Pos.CENTER_LEFT

  4. Anchura preferida de la tabla → TableView prefWidth = 400

  5. Placeholder (promptText) de TextField → se define con promptText

StyleClass a asignar en Scene Builder

Para que el CSS funcione, debes asignar clases (styleClass) a los nodos.

Resultado esperado

Una aplicación funcional equivalente a la de la UD02A03, pero organizada en MVC con FXML + Scene Builder y estilos aplicados desde un CSS externo, respetando la separación de responsabilidades y la lógica de duplicados en el modelo.

  • Agenda.css Agenda.css
    12 de xaneiro de 2026, 5:22 PM
Neste momento está usando o acceso para convidados (Acceder)
Resumo da retención de datos
Políticas
Obter a apli móbil
Fornecido por Moodle