CÉLKÖZÖNSÉG
Ez az alkalmazás a WebFX projektet követő fejlesztők számára jelent meg, és a projekt bemutatóinak része.
ÚJ KÖZÖNSÉGNEK
A WebFX egy ingyenes, nyílt forráskódú, többplatformos megoldás, amely 7 platformot (Web, Android, iOS, macOS, Linux, Windows és beágyazás, például Raspberry Pi) képes megcélozni egyetlen Java kódbázisból.
Mögöttes technológiák: OpenJFX, Gluon és GWT.
Például meglátogathatja ugyanezen alkalmazás webes verzióját a https://mandelbrot.webfx.dev címen
Bármilyen platform is legyen, az alkalmazás forráskódja pontosan ugyanaz (a bemutató forráskódjának eléréséhez lásd lent a LINKEK részt).
Az alkalmazás Java nyelven íródott, és a JavaFX API-t használja a felhasználói felület felépítéséhez.
A Gluon eszközlánc (amely a GraalVM-re épült) arra szolgál, hogy az alkalmazás Java kódját natív alkalmazássá fordítsa az összes platformon, kivéve a weben (így ez az Android verzió is beletartozik).
A GWT a webes verzió fordítására szolgál. A Java kódot optimalizált JavaScript kóddá alakítja át.
Ennek eredményeként az összes futtatható fájl minden platformon optimalizált teljesítményt kínál.
A KÜLÖNLEGES DEMÓRÓL
Ez a demó hasonló a Ray tracer demójához, de emellett kihasználja a WebAssembly előnyeit a webes platformon.
A Ray nyomkövetőhöz hasonlóan a Mandelbrot demója egy olyan alkalmazás példáját mutatja be, amely a nagy CPU-használat ellenére sem blokkolja a felhasználói felületet, és ez bármilyen platformon (még a weben is).
Amíg az alkalmazás számításokat végez, a felhasználói felület továbbra is reaktív, akár le is játszhatja az eddig kiszámított animációt, miközben a háttérben folytatja a számítást.
Ez a WebFX Worker API és a WebAssembly API használatával érhető el, amely a webes platformon tényleges Web Workers-re, más platformokon pedig szabványos Java-szálakra van fordítva.
Ha a WebAssembly támogatott (csak webes platformon), a számítás a WebAssembly használatával történik.
LINKEK
Demo forráskód: https://github.com/webfx-demos/webfx-demo-mandelbrot
WebFX webhely: https://webfx.dev
WebFX GitHub: https://github.com/webfx-project/webfx
Szoftverkönyvtárak és demóprogramok