Inleiding
Voor het programma is een frontend nodig, zodat het gebruikt kan worden door een eindgebruiker zonder ervaring met terminalapplicaties. Hiervoor zijn meerdere opties mogelijk, zoals een RESTful framework die op een centrale plek gehost wordt waarmee iemand kan communiceren via webpaginas, of een standalone java applicatie met een framework zoals JavaFX. Dit moet vroeg besloten worden omdat het onwikkelen van een frontend handig is om dingen te presenteren aan de product owner, en het duurt lang, dus is het beter om dit te ontwikkelen aan het begin van het project.
De hoofdvraag is dus Welk frontend framework moet er gekozen worden voor het ontwikkelen van een opvolger voor rokade?
Dit kan worden opgedeeld in de volgende deelvragen:
Wat zijn de voor en nadelen van een RESTful api framework met een webapp?
Welk framework is de beste keus voor een RESTful api framework?
Wat zijn de voor en nadelen van een GUI framework?
Welk framework is de beste keus van een GUI framework?
Restful API
Een restful api is een serverapplicatie die requests kan handlen die het krijgt van een clientapplicatie, vaak een browser. Als de applicatie ontwikkeld zou worden als een RESTful server applicatie zou er een website bij ontwikkeld moeten worden die de server requests en responses verwerkt met behulp van javascript of PHP. Hiervoor is dus een website nodig, en een host machine.
Voor en nadelen van een Restful API
Voordelen:
- Een user interface kan gemaakt worden met behulp van HTML en CSS, wat erg goed te stijlen is. Het kan dus precies gemaakt worden volgens de wensen van de opdrachtgever.
- Een HTML frontend is makkelijker om responsive te maken, en dit maakt het gebruik op allerlijk soorten devices mogelijk.
- Het is veel modulairder, met een goede specification kan iedereen een andere frontend ontwikkelen.
- Het is eenvoudiger om een beveiligde database connectie te leggen, omdat de database op dezelfde machine gehost kan worden als de API.
- Alle teamgenoten zijn al bekend met RESTful apis en HTML frontends
Nadelen:
- Er moet een website ontwikkeld worden die los staat van de applicatie.
- Er moet extra beveiliging gemaakt worden om de webapp te beveiligen tegen ongewenste gebruikers.
- Er moet meer gehost worden dan alleen een database.
- De webapp zou eventueel compatible gemaakt moeten worden met de bestaande wordpress website.
Beste keus voor een RESTful API
Bijna alle teamleden zijn al bekend met Jakarta EE Wildfly, maar er zijn ook andere opties
Standalone GUI framework
De oude versie van Rokade is een standalone Delphi applicatie. De eisen van de opdrachtgever kunnen ook opgelost worden door het net als Rokade een standalone applicatie te maken met een GUI framework binnen Java.
Voor en nadelen van een GUI framework
Voordelen:
- Een standalone applicatie kan eenvoudiger geconfigured worden voor een individuele user.
- De gebruikers van de applicatie zijn al bekend met het gebruiken van een standalone applicatie.
- Frameworks als JavaFX zijn ook met CSS te stylen.
- Als een open source project zijn standalone applicaties makkelijker om aan te passen.
Nadelen:
- De meeste teamleden zijn niet bekend met GUI frameworks in Java.