JavaFX projektin perusarkkitehtuuri

Tässä blogissa selvitämme perinteisen JavaFX-sovelluksen rakennetta. Sovelluksen pohjan voi generoida vaikkapa Netbeans IDElla. Tässä keskitymme vain tapaukseen, jossa käyttöliittymä on .fxml-tiedosto. Tätä tiedostoa voidaan ylläpitää WYSIWYG-editorilla, Scene Builderilla, jota puolestaan ylläpitää Gluon.

JavaFX:n XML-käyttöliittymin tehtävä projekti on MVC-arkkitehtuurin mukainen. Netbeansin projektiwizard leipoo sovelluksn pohjan jossa oleelliset osat ovat:
– main-luokka, jossa on sovelluksen käynnistysluokka
– .fxml-tiedosto, joka kuvaa käyttöliittymän
– controller-luokka, joka sisältää .fxml-tiedoston taustakoodin

Muuten arkkitehtuurin toteutus jää vapaasti toteutettavaksi wizardin jäljiltä. Kontrolleri ottaa yhteyttä palveluihin tai suoraan tietokantaan. On selvää, että suurta kontrolleria on syytä jakaa pienempiin toiminnallisuuksiin.

Javan Propertyja tarvitaan, mikäli halutaan käyttää datan sidontaa XML-käyttöliittymän ja sovelluskoodin välillä. Tämä tarkoittaa, että .fxml-tiedoston komponentteihin sidottava data joudutaan sijoittamaan tätä varten normaaleista POJO-luokista kontrollerin Property-jäseniin.

Seuraavissa blogiessa esitämme tapoja jakaa kontrolleri pienempiin kokonaisuuksiin.

Architecture alternatives