info  fabercon.fi | +358 400 533 978 or +358 44 204 2029

Category: Blogikirjoitukset

Flutter, ohjelmoinnin hopealuoti

Google julkaisi viime vuonna Flutter alustan, joka perustuu Googlen Dart ohjelmointikieleen, ja jolla voi tehdä ns. cross-platform sovelluksia. Termi tarkoittaa sitä, että sama koodi käy usealle käyttöjärjestelmälle, ja usealle eri laitealustalle. Esimerkiksi selaimet ovat tällaisia ohjelmistotuotteita. Flutterilla tehty koodi käy sellaisenaan Androidille, iPhonelle ja lähitulevaisuudessa myös desktopille. Varsinainen pommi tuli

Lue lisää

Liferay 7, ensivaikutelmia

Liferayn 6.2 versiota käsittelimme pitkässä blogisarjassa lähes kaksi vuotta sitten. Uusin versio, Liferay 7, on pahasti myöhässä alkuperäisestä aikataulustaan. Liferayn dokumentaatio on edelleen varsin hajanaista, epäyhtenäistä ja puutteellista. Tämä on tyypillistä alustoille, joista on tarjolla sekä ilmainen että kaupallinen vaihtoehto (Liferay 7 CE vs. Liferay 7 EE) . Dokumentaation puutteellisuus

Lue lisää

PHP, die hard

PHP:n historia ulottuu vuoteen 1994 asti. PHP:n kuolemaa on uumoiltu monta kertaa, mutta uumoilijat ovat olleet väärässä. PHP on kelvoton, sillä ei voi tehdä kunnon koodia, isojen sovellusten tekeminen ylläpidettävästi on mahdotonta. Jos mikä tahansa näistä väitteistä olisi totta, PHP olisi todella hävinnyt jo aikoja sitten. Aikana, jolloin monimutkaisuudesta on

Lue lisää

Luotatko Googlen tekniikoihin?

Webin jättiläiseltä, Googlelta tulee jatkuvasti laadukkaita ja kiinnostavia teknisiä ratkaisuja ohjelmistuotantoon. Mutta miten niihin pitää suhtautua, onko niillä jatkuvuutta? Periaatteessa yrityksen koko – Googlen tapauksessa se on jättiläismäinen – on tässä mielessä positiivinen merkki, isolla yrityksellä riittää voimavaroja ohjelmointialustojen ja -kehysten (platforms and frameworks) ylläpitoon ja kehittämiseen. Google on kuitenkin

Lue lisää

Sovellusarkkitehtuurimallit Web-sovelluksessa

Yhteistä yleisille arkkitehtuurimalleille (MV*): Kaikissa malleissa on ideana järkevät riippuvuudet eri osien välille ja selkeät ohjeet, mitä kukin sovelluksen osa tekee. Kaikissa on Model riippumaton muista osista. Tärkeintä on, että käyttöliittymä (View) ja logiikka (Model) ovat selkeästi erillään. Kun kyseessä on web-sovellus, on termi Model sisällöltään kaikkea muuta kuin kiinteä,

Lue lisää

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,

Lue lisää

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

Lue lisää

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

Lue lisää

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

Lue lisää

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,

Lue lisää
Scroll to Top