Skip to main content

Posts

Showing posts from August, 2015

Akka + Vaadin osa 1

Viestin välitykseen perustuva design patternia voi hyödyntää mutkikkaissa ohjelmistoissa erottamaan tiukkoja riippuvuuksia ohjelman eri osien välillä. Oma kokemukseni tästä on Vaadin käyttöliittymä, jonka bisneslogiikast vastaa Akka. Akka hoitaa yhteydet taustajärjestelmän palveluihin, navigoinnin sekä käyttäjäsession. Käyttöliittymässä noudatetaan MVP patternia. Presenterit ovat Akka-aktoreita. Presenterit voivat lähettää viestejä taustajärjestelmäyhteyksiä hoitaville aktoreille, toisille presentereille sekä luonnollisesti vastaanottaa notifikaatioita jotka voivat olla broadcastattuja. Presenterit siis ajetaan eri säikeessä missä "käyttöliittymäsäie" pyörii. Koodaajan ei tarvitse välittää rinnakkaisuudesta muutoin kuin interaktoissa käyttöliittymän kanssa. Presenteriaktorit ovat nimettyjä tietyn säännön mukaan, jotta nämä voivat lähettää helposti viestejä muille presentereille. Tämä mahdollistaa verrattain helpon kommunikoinnin eri käyttöliittymän käyttäjien välillä. Mi