You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Inleiding

Voor het programma is een java frontend nodig, zodat het gebruikt kan worden door een eindgebruiker via een exe bestand. Hiervoor zijn meerdere opties mogelijk, zoals JavaFX of Swing. 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 Kunnen wij beter JavaFX of Swing als java frontend framework gebruiken om een nieuwe versie van rokade te maken?

Dit kan worden opgedeeld in de volgende deelvragen:

Wat is JavaFX?

Wat is Swing?

Wat zijn de voor en nadelen van JavaFX?

Wat zijn de voor en nadelen van Swing?

Wat is het verschil tussen JavaFX en Swing?


Wat is JavaFX?

JavaFX is een platform en framework dat gebruikt wordt voor de ontwikkeling van desktopapplicaties en rijke internettoepassingen. Het is gebaseerd op Java en biedt een uitgebreide set tools en bibliotheken om interactieve en visueel aantrekkelijke gebruikersinterfaces te creëren. Met JavaFX kunnen ontwikkelaars diverse moderne technologieën integreren om boeiende en responsieve applicaties te bouwen.


Wat is Swing?

Wat zijn de voor en nadelen van JavaFX?

Het platform biedt een breed scala aan aanpasbare gebruikersinterfacecomponenten, zoals knoppen, tekstvelden, tabellen en grafieken, die kunnen worden gestileerd en aangepast om te voldoen aan de ontwerpvereisten van een applicatie. JavaFX maakt gebruik van FXML (FXML Markup Language), een op XML gebaseerde taal waarmee ontwikkelaars de structuur van de gebruikersinterface kunnen definiëren, waardoor de scheiding tussen de gebruikersinterface en de applicatielogica mogelijk wordt gemaakt.

CSS-styling kan worden toegepast om de vormgeving van de gebruikersinterface aan te passen, wat een flexibele manier biedt om de uitstraling van de applicatie te veranderen en een consistente gebruikerservaring te creëren. Met JavaFX kunnen ontwikkelaars krachtige 2D- en 3D-graphics creëren, inclusief ondersteuning voor animatie en speciale effecten. Hierdoor kunnen interactieve en visueel indrukwekkende gebruikersinterfaces worden ontworpen.

Bovendien bevat JavaFX ingebouwde ondersteuning voor het afspelen van audio- en videobestanden, evenals voor het weergeven van afbeeldingen en andere media-inhoud. Dit maakt multimedia-integratie mogelijk in JavaFX-applicaties. Een belangrijk voordeel van JavaFX is de platformonafhankelijkheid. JavaFX-toepassingen kunnen worden uitgevoerd op verschillende besturingssystemen, waaronder Windows, macOS en Linux, waardoor ontwikkelaars een breed publiek kunnen bereiken.

Al met al biedt JavaFX een uitgebreide set tools en bibliotheken waarmee ontwikkelaars snel en efficiënt interactieve en visueel aantrekkelijke desktopapplicaties en RIAs kunnen bouwen. Met zijn krachtige grafische mogelijkheden, flexibele lay-outopties en platformonafhankelijkheid is JavaFX een populaire keuze geworden voor het ontwikkelen van moderne Java-toepassingen.

Wat zijn de voor en nadelen van Swing?

Wat is het verschil tussen JavaFX en Swing?

Conclusie

Bronnen









Oud 

Oud 

Oud 

Oud 

Oud 



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 zoals Spring of andere frameworks die aan de stack toe te voegen zijn. De belangrijkste technische keuzes die bij deze optie horen zijn de keuzes voor de frameworks die gebruikt worden voor de frontend, vooral de javascript frameworks om de JSON objecten correct af te handelen. Hier zou ook een onderzoek voor gedaan moeten worden.

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.

Beste keus voor een GUI framework

Oracle heeft zelf een framework hiervoor die ingebouwd zit in openJDK, JavaFX. Hiervoor zijn ook plugins voor IntelJ om het ontwikkelen te stroomlijnen. Als alternatief op JavaFX zou Swing gebruikt kunnen worden, maar JavaFX was bedoelt als een opvolger op Swing



  • No labels