JavaFX
JavaFX on Java-kielen ohjelmistoalusta, jolla voi luoda ja toimittaa työpöytäsovelluksia sekä rikkaita verkkosovelluksia, jotka toimivat monenlaisilla laitteilla. JavaFX tukee työpöytätietokoneita ja verkkoselaimia Microsoft Windowsissa, Linuxissa ja macOS:ssa sekä mobiililaitteita, joissa on iOS ja Android12. JavaFX on rakennettu Java-kielen päälle ja se on tarkoitettu korvaamaan Swing standardina GUI-kirjastona Java SE:lle. JavaFX on osa OpenJDK:ta OpenJFX-projektin alla ja sitä voi käyttää ilmaiseksi avoimen lähdekoodin lisenssillä.[1]
JavaFX:n[2]ensimmäinen versio julkaistiin vuonna 2008. [3] JavaFX on alunperin Sun Microsystemin kehittämä[4] ja se tarjoaa Java-koodin kehittämistä varten graafisen käyttöliittymän (GUI) kehyskokoelman sekä käyttöliittymäohjelmointirajapinnan (API) [5]. JavaFX:n avulla voidaan luoda monipuolisia verkkosovelluksia sekä työpöytäsovelluksia [6] ja se on rakennettu Java SE:n päälle, mikä mahdollistaa yhteensopivuuden useiden eri alustojen, kuten Linuxin, Windowsin ja macOSin kanssa. [7]
Windowsin käyttöliittymistä se tukee ainakin tukee Windows Vista-, Windows 7-, Windows 8-, Windows 10 -käyttöjärjestelmiä. JavaFX 1.2:sta alkaen Oracle on julkaissut beta-versioita OpenSolaris-käyttöjärjestelmälle. [8] Mobiililaitteissa JavaFX Mobile 1.x pystyy toimimaan useissa mobiilikäyttöjärjestelmissä, kuten Symbian OS:ssä, Windows Mobile -käyttöjärjestelmässä [9]. Lisäksi JavaFX tukee muita mobiilikäyttöliittymiä, kuten iOS sekä Android -käyttöliittymiä [10].
JavaFX on kokoelma Java-paketteja, joita hyödyntämällä voidaan lisätä Java-sovelluksiin graafisia käyttöliittymiä[11] ja se sisältää useita valmiita komponentteja, kuten esimerkiksi tekstikenttiä, taulukoita ja painikkeita käyttöliittymän rakentamisen helpottamiseksi. Näiden lisäksi se sisältää esimerkiksi erilaisia visuaalisia efektejä sekä animaatioita. [12] JavaFX:n ominaisuudet mahdollistavat esimerkiksi sen, että sitä voidaan käyttää esimerkiksi multimediasovellusten luomiseen ja se sopii erinomaisesti suorituskykyisten sovelluksien rakentamiseen, jotka vaativat paljon visuaalisia tehosteita [13]. Ennen JavaFX:ää pääasiallinen tapa luoda graafisia käyttöliittymiä oli tehdä se Swing API:n kautta. [14]
Deklaratiiviseen käyttöliittymään perustuvan JavaFX:n oli tarkoitus korvata perinteiseen imperatiiviseen käyttöliittymän luomiseen perustuva Swing. Tästä on luovuttu. Swing kuuluu Java SE -standardiin ja toimitetaan sen mukana, toisin kuin JavaFX.[15][16]
Ominaisuudet
JavaFX 1.1 perustuu "yhteisen profiilin", joka on tarkoitettu kattamaan kaikki JavaFX:n tukemat laitteet. Tämä lähestymistapa mahdollistaa kehittäjille yhteisen ohjelmointimallin rakentaessa sovellusta ja jakamaan paljon koodia, graafisia elementtejä sekä sisältöä työpöytä- ja mobiiliversioiden välillä. JavaFX 1.1 -alustassa on myös työpöytä- tai mobiilikohtaisia ohjelmointirajapintoja, jotta voidaan vastata tarpeeseen hienosäätää sovelluksia tiettyä laitekokoa varten. Esimerkiksi JavaFX-työpöytäprofiili sisältää Swingin ja edistyneitä visuaalisia efektejä.
Käyttäjälle "Raahaa ja asenna" -ominaisuus mahdollistaa JavaFX-widgetin, joka on verkkosivustossa oleva, työpöydälle raahattava sovellus joka ei menetä tilaansa tai kontekstiaan, vaikka selain suljetaan. Sovellus voidaan myös käynnistää uudelleen napsauttamalla automaattisesti luotua pikakuvaketta käyttäjän työpöydällä. Tämä toiminto on mahdollistettu Java-aplett mekanismin avulla
JavaFX 1.x sisälsi sarjan lisäosia Adobe Photoshopille ja Illustratorille, jotka mahdollistavat edistyneiden grafiikoiden integroimisen suoraan JavaFX-sovelluksiin. Lisäosat tuottavat JavaFX Script -koodia, joka säilyttää grafiikan kerrokset ja rakenteen. Kehittäjät voivat siten lisätä animaatiota tai efektejä tuotuihin staattisiin grafiikoihin. JavaFX x.1 sisältää myös SVG-grafiikan muunnostyökalun (tunnetaan myös nimellä Media Factory), joka mahdollistaa grafiikan tuonnin ja toimintojen esikatselun muunnoksen jälkeen JavaFX-muodossa.
Ennen JavaFX:n 2.0 versiota kehittäjät käyttivät sovellusten rakentaimseen staattisesti kirjoitettua, deklaratiivista kieltä jota kutsuttiin JavaFX Scriptiksi. Koska JavaFX Script käännettiin Java-bytecodeksi, ohjelmoijat saattoivat käyttää sen sijaan myös Java-koodia. JavaFX-sovellukset saattoivat toimia missä tahansa pöytätietokoneessa, joka pystyi käyttämään Java SE:tä.[17]
JavaFX 2.0 ja sitä uudemmat versiot on implementoitu "alkuperäisenä" Java-kirjastona, ja JavaFX:ää käyttävät sovellukset kirjoitetaan "alkuperäisellä" Java-koodilla. Oracle on hylännyt JavaFX Scriptin, mutta kehitys jatkuu Visage-projektissa.[18] JavaFX 2.x ei tue Solaris-käyttöjärjestelmää tai matkapuhelimia; kuitenkin Oracle aikoo integroida JavaFX:n Java SE Embedded 8:aan. JavaFX ARM-prosessoreille on kehittäjien esikatseluvaiheessa.[19]
Sun Microsystems on lisensoinut mukautetun kirjaintyypin nimeltä Amble JavaFX-laitteita varten. Fonttiperhe suunnitelun toteutti mobiilkäyttöliittymän suunnittelun erikoisosaaja Punchcut, ja se on saatavilla osana JavaFX SDK 1.3 julkaisua.
Lähteet
- ↑ ChatGPT
- ↑ JavaFX Tutorial - javatpoint www.javatpoint.com. Viitattu 18.6.2022. (englanniksi)
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ 1 JavaFX Overview (Release 8) docs.oracle.com. Viitattu 20.3.2023.
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ What Is JavaFX? | JavaFX 2 Tutorials and Documentation docs.oracle.com. Viitattu 20.3.2023.
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ Lowe, Doug: JavaFX for Dummies, s. 10. Hoboken, New Jersey : John Wiley & Sons, Inc., 2015.
- ↑ JavaFX. Wikipedia, 5.10.2022. Artikkelin verkkoversio. (englanniksi)
- ↑ 1 JavaFX Overview (Release 8) docs.oracle.com. Viitattu 20.3.2023.
- ↑ Lowe, Doug: JavaFX for Dummies, s. 10. Hoboken, New Jersey : John Wiley & Sons, Inc., 2015.
- ↑ https://www.oracle.com/technetwork/java/javafx/overview/faq-1446554.html#6
- ↑ Lowe, Doug: JavaFX for Dummies, s. 10. Hoboken, New Jersey : John Wiley & Sons, Inc., 2015.
- ↑ 1 JavaFX Overview (Release 8) docs.oracle.com. Viitattu 4.4.2023.
- ↑ Google Code Archive - Long-term storage for Google Code Project Hosting. code.google.com. Viitattu 4.4.2023.
- ↑ JavaFX roadmap web.archive.org. 25.10.2012. Viitattu 4.4.2023.