340 likes | 643 Views
Naslednik Jave?. JavaFX. Saša Divjak Univerza v Ljubljani. Vsebina. Kaj je in zakaj JavaFX? Glavne značilnosti JavaFX Kaj lahko naredimo z JavaFX Platforme JavaFX Zgradba aplikacij JavaFX Hiter vpogled v JavaFX script Kaj je vključeno v tehnologijo JavaFX. Trendi. Uporabniki.
E N D
Naslednik Jave? JavaFX Saša Divjak Univerza v Ljubljani
Vsebina Kaj je in zakaj JavaFX? Glavne značilnosti JavaFX Kaj lahko naredimo z JavaFX Platforme JavaFX Zgradba aplikacij JavaFX Hiter vpogled v JavaFX script Kaj je vključeno v tehnologijo JavaFX
Trendi Uporabniki Avtorji vsebin Bistvo so bogati mediji Domačnost z zasloni Rast skupnosti razvijalcev Hitrejši razvoj in posredovanje vsebin Izraznost Kontekstualna vsebina
Rast bogatih spletnih aplikacij Video in zvok Animacije Grafika Transformacije in filtri Bogata besedila Spletne storitve Preprost skriptni jezik Grafična razvojna orodja
Pretočni video JavaFX ima media API, ki omogoča poln nadzor predvajanja videa. Uporabimo lahko tudi komponento JavaFX MediaBox , predpripravljen predvajalnik, ki ga najdemo v com.sun.javafx.mediabox package. DEMO
3-D predstavitvena polica s transformacijami perspektive DEMO
Bogati odjemalci spreminjajo igro • Postajajo tudi vizualno bogati • S tradicionalnimi orodji je s pripravo tega preveč dela • Izziv za konvencionalno izgradnjo GUI • Odjemalce najdemo povsod • Koncept ene programske opreme na enem računalniku izumira... • Brkljaliki niso več edini odjemalec – Uporabljamo jih kot vozila za dostavo • Odjemalce bolj načrtujemo kot programiramo • Sodelovanje z grafičnimi designerji pri koncipiranju vmesnikov
Kaj pomeni RIA danes Razširitev RIA na različne platforme
Ciljna skupina JavaFX • JavaFX aplikacije naj bi tekli na kateremkoli namizju in brkljalniku, ki poganja izvajalno okolje Jave, s preprosto integracijo z Java ME so široko odprta miliardam mobilnih telefonov in drugih navezanih naprav Namizje Splet Mobilne naprave TV Druge platforme
Primer: Leteči krožnik DEMO Novi vtičnik za javanske aplete omogoča tvorbo apletov, ki tečejo izven brkljalnika.
Razvojna orodja JavaFX Integrirana razvojna okolja Mobilna emulacija Tvorba medijskih gradnikov Pretvorba medijskih gradnikov
Še o aplikacijah JavaFX • Platformno neodvisne aplikacije: • Le skupni API JavaFX. • Trenutno : 2D Grafika, Animacija, besedilo. • V bodoče : avdio, video, omreženje, lokalno pomnenje in druge pomembne komponente • Namizne aplikacije • Izgled namizja kot pri JavaFX Swing • Ogrodja Device Media Frameworks in podpora napredni grafiki
JavaFX Script • Opisni skriptni jezik • Lajša hiter, opisni razvoj GUI (grafičnih uporabniških vmesnikov) • Polno podpira 2D grafiko in standardne komponente Swing • Teče na JVM (Java Virtual Machine) • Za posredovanje imamo enake možnosti kot pri javanskih programih • Izkoriščamo lahko razrede in razredne knjižnice Jave • Namenjen tako razvijalcem vsebin kot medijskim inženirjem • Večina skriptnih jezikov je usmerjena v tvorbo spletnih strani. Ta pa je usmerjen v visoko animirane vmesnike
Primer aplikacije JavaFX import javafx.scene.paint.Color; import javafx.scene.Scene; import javafx.scene.shape.Circle; import javafx.stage.Stage; Stage { scene: Scene { content: [ Circle { centerX: 50 centerY: 50 radius: 50 fill: Color.RED } ] } }
Tehnologija JavaFX Programski jezik JavaFX Script API Java Opomba: Program v JavaFX Script lahko kliče katerikoli API Jave
Kaj naložiti z interneta? Košarica programerja Košarica načrtovalca GUI Samostojna košarica
JavaFX Plugin za AdobePhotoshop in Adobe Illustrator Z njimi izvažamo grafične gradnike v format JavaFX.
JavaFX Media Factory • SVG konverter • pretvori SVG grafiko v format JavaFX • Viewer • Gledanje grafičnih gradnikov, pretvorjenih v format JavaFX .
Samostojna SDK • Če imate raje druga orodja oziroma razvijate direktno iz ukazne vrstice, lahko naložimo samostojen SDK. • JavaFX 1.0 SDK • > JavaFX 1.0 Desktop Runtime • > JavaFX Mobile Runtime Beta Release • > JavaFX 1.0 APIs • > JavaFX 1.0 Prevajalnik • > JavaFX 1.0 Mobile Emulator Beta Release (za Windows) • > JavaFX API dokumentacija • > primeri
Posredovanje aplikacij JavaFX • JavaFX 1.0 applikacije lahko posredujemo z uporabo dveh standardnih Javanskih tehnologij • Java vtičnik: Orodje za posredovanje javanskih apletov, ki tečejo v spletnem brkljalniku • Java Web Start: Orodje za posredovanje samostojnih javanskih aplikacij za namizje. • Lahko pa uporabimo mobilni emulator • Orodje, ki prikazuje aplikacije, kot bi izgledale na tipični mobilni napravi
Licenciranje Core JavaFX runtime je še lastniška programska oprema, ki še ni bila prepuščena javnosti. Prevajalnik JavaFX in 2D Scene graph sta prepuščena licenci GPL. Vtičnik NetBeans za JavaFX ima dvojno licenco: GPL in CDDL
JavaFx Mobile • JavaFX Mobile je javanski operacijski sistem za mobilne naprave. • Razvili so ga pri SavaJe Technologies • Sun Microsystems ga je leta 2007 odkupil
Prvi program DEMO
Prevajanje in izvajanje iz ukazne vrstice javafxc -d . HelloGoodbye.fx javafx beatles.HelloGoodbye
Učinkovitost JavaFX • Neuradni testi (bubblemarks): • JavaFx/Vecktorji: 20 fps, 50% CPU • Flash/Flex: 21fps, 83% CPU • Silverlight/CLR: 40fps, 82% CPU • Flash/cacheAsBitmap: 64fps, 58% CPU • Java/Swing (optimiziran): 163fps, 50% CPU • Java/PulpCore: 200fps, 50% CPU
Razvoj programov • Na voljo le na sistemih Mac in Windows • Ne za Linux ali Solaris • Za Linux se še dela