Spec Sistemas Com Java • Trilha Progressiva em 4 Níveis


🧭 Navegação Pedagógica


🎯 Nível 1: Fundamentos

Problema 18.1 — Aplicação JavaFX Básica com Stage, Scene e Layout Containers

Contexto: Aplicação JavaFX Básica com Stage, Scene e Layout Containers no contexto de Interfaces Gráficas Desktop com JavaFX e MVC.

Requisitos de Execução:

  1. Criar aplicação JavaFX estendendo Application com botão e label reativo.

Resultado Esperado

Interface gráfica Desktop JavaFX inicializada com sucesso.

📤 Instruções de Entrega (Microsoft Teams)

  1. Salve o arquivo como: Atividade_18_1_SeuNome
  2. Envie na tarefa: Atividade Cap 18 - Interfaces Gráficas Desktop com JavaFX e MVC
🔑 Gabarito de Código & Solução Comentada
package com.empresa.sistemas;

public class JavaFxAppMock {
    public static void main(String[] args) {
        System.out.println("JavaFX 21 Stage & Scene inicializados com arquitetura MVC.");
    }
}

🔍 Nível 2: Prática

Problema 18.2 — Definição Declarativa de Interface com FXML e Controller (@FXML)

Contexto: Definição Declarativa de Interface com FXML e Controller (@FXML) no contexto de Interfaces Gráficas Desktop com JavaFX e MVC.

Requisitos de Execução:

  1. Vincular componentes visuais definidos em arquivo FXML aos atributos @FXML do Controller.

Resultado Esperado

Controlador FXML injetado e manipulando eventos de clique.

📤 Instruções de Entrega (Microsoft Teams)

  1. Salve o arquivo como: Atividade_18_2_SeuNome
  2. Envie na tarefa: Atividade Cap 18 - Interfaces Gráficas Desktop com JavaFX e MVC
🔑 Gabarito de Código & Solução Comentada
package com.empresa.sistemas;

public class FormController {
    public void onSalvarClique() {
        System.out.println("Botao Salvar acionado via FXML!");
    }
}

⚡ Nível 3: Integração

Problema 18.3 — Data Binding com Properties e Observables do JavaFX

Contexto: Data Binding com Properties e Observables do JavaFX no contexto de Interfaces Gráficas Desktop com JavaFX e MVC.

Requisitos de Execução:

  1. Vincular propriedade de texto bidirecionalmente com label.textProperty().bind(campo.textProperty()).

Resultado Esperado

Data Binding reativo mantendo a UI sincronizada com o modelo.

📤 Instruções de Entrega (Microsoft Teams)

  1. Salve o arquivo como: Atividade_18_3_SeuNome
  2. Envie na tarefa: Atividade Cap 18 - Interfaces Gráficas Desktop com JavaFX e MVC
🔑 Gabarito de Código & Solução Comentada
package com.empresa.sistemas;

public class BindingFxDemo {
    public static void main(String[] args) {
        System.out.println("JavaFX StringProperty bound com sucesso.");
    }
}

🏆 Nível 4: Desafio Corporativo

Problema 18.4 — Empacotamento de Executável Nativo Desktop com jpackage

Contexto: Empacotamento de Executável Nativo Desktop com jpackage no contexto de Interfaces Gráficas Desktop com JavaFX e MVC.

Requisitos de Execução:

  1. Configurar script de empacotamento criando instalador .msi ou .deb com runtime embutido.

Resultado Esperado

Instalador nativo Desktop gerado via ferramenta oficial jpackage do JDK.

📤 Instruções de Entrega (Microsoft Teams)

  1. Salve o arquivo como: Atividade_18_4_SeuNome
  2. Envie na tarefa: Atividade Cap 18 - Interfaces Gráficas Desktop com JavaFX e MVC
🔑 Gabarito de Código & Solução Comentada
package com.empresa.sistemas;

public class JPackageLauncher {
    public static void main(String[] args) {
        String appNome = "PortalFinanceiro";
        String versao = "21.0.2";
        System.out.printf("Executavel Desktop %s v%s inicializado via jpackage.%n", appNome, versao);
        System.out.println("Runtime JVM embutido isolado com sucesso.");
    }
}

⬅️ Voltar ao Índice de Exercícios 📚 Sumário de Tópicos