TCA ja TSA web-arkkitehtuurit
Mainio ajatuksia herättävä opetusartikkeli web-arkkitehtuureista: (webapps) Artikkeli ei käsittele ”muotitermejä” MVC, MVVM jne, vaan keskittyy kuvaamaan sovelluksen eri osien sijaintia ja yhteistyötä, ja tekee sen hyvin selkeästi. Jatkamme tästä aineesta parin blogin verran. Kevyt client -arkkitehtuuri (thin client architecture, TCA) ja tavallaan sen vastakohta, kevyt server -arkkitehtuuri (thin server architecture,
JavaFX-sovellus MVP-arkkitehtuurilla
JavaFX:n databindaus voi olla ongelmallinen toteuttaa. Tähän tarvittava syntaksi on monimutkainen ja elementteihin pitää liittää paljon vaikeaselkoista boilerplate-koodia mm. tapahtumanhallintaan. Ei ole selvää, onko datan sidonnasta saatava hyöty suurempi kuin sen vaatima kustannus. Toinen ongelma on JavaFX:n property-luokkien käyttö. Olisi luettavampaa käyttää sovelluslogiikkakerroksessa tavallisia POJO-luokkia, eikä syntaksisesti hankalia property-luokkia. Javassa
JavaFX-sovellus MVVM-arkkitehtuurilla
Aiemmissa sarjan blogeissa totesimme, että JavaFX sovellusten perusarkkitehtuuri on MVC. Jos haluamme rakentaa sovelluksen MVVM-arkkitehtuurin mukaiseksi, emme joudu tekemään mitään JavaFX:n sovelluksen perusrakennetta vastaan, vaan kyse on siitä, miten sovellus rakennetaan siitä eteenpäin. Tämä vaatii työtä ja kurinalaisuutta, mutta vastapainoksi MVVM ottaa enemmän irti JavaFX:n databindauksesta ja jakaa JavaFX:n kontrolleriluokkaa
RESTful-rajapintojen käyttö JavaFX-sovelluksessa
Alla olevan kuvan esimerkissä sepät ovat tehneet sovelluksen businesslogiikan sovelluspalvelimelle. Serverilla olevaa sovelluksen koodia ei tarvitse muuttaa millään lailla, jos desktop-käyttöliittymä korvataan web-käyttöliittymällä. Kontroller-luokka pitää yhteyttä serverille RESTful-palvelujen kautta. Palvelurajapinnan käsittely Java-koodissa on rakennettu tässä ratkaisussa erittäin käytetyn Apache HttpClient-kirjaston avulla, sen päälle edelleen rakentaen. Tuloksena on kirjasto, jota voidaan
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,