Platforma JavaFX pre moderné webové aplikácie: Rozdiel medzi revíziami
(10 medziľahlých úprav od 3 ďalších používateľov nie je zobrazených) | |||
Riadok 3: | Riadok 3: | ||
[[Kategória:Informatika]] | [[Kategória:Informatika]] | ||
[[Kategória:Java]] | [[Kategória:Java]] | ||
− | |||
{{Hlavička_KI | {{Hlavička_KI | ||
|{{PAGENAME}}|Bc. Martin Vaško|Ing. Juraj Ďuďák | |{{PAGENAME}}|Bc. Martin Vaško|Ing. Juraj Ďuďák | ||
Riadok 10: | Riadok 9: | ||
|Mechatronika | |Mechatronika | ||
}} | }} | ||
− | + | __TOC__ | |
− | { | + | {{Praca_uvod|1|Platforma JavaFX pre moderné webové aplikácie|Čo je JavaFX|JavaFX 1.2|Tvorba JavaFX aplikácie||||||||}} |
− | |||
− | |||
− | | 1 | ||
− | | | ||
− | |||
− | |||
− | |||
− | | | ||
− | | | ||
− | | | ||
− | | | ||
− | | | ||
− | | | ||
− | |} | ||
− | |||
− | |||
{{abstrakt | {{abstrakt | ||
|Popis technológie JavaFX, jej možnosti uplatnenia v praxi, porovnanie s inými podobnými technológiami. JavaFX ako objektovo orientovaný multiplatformný programovací jazyk, využívaný pri tvorbe aplikácií ovládania mobilných telefónov až po vytváranie web-aplikácií. Vlastnosti technológie JavaFX vo verzii 1.2, jej výhody aj nevýhody. Spolupráca s databázami a webovými službami. Vytvorenie webovej aplikácie prístupu na rozvrh FM využívajúcej MySQL databázu. | |Popis technológie JavaFX, jej možnosti uplatnenia v praxi, porovnanie s inými podobnými technológiami. JavaFX ako objektovo orientovaný multiplatformný programovací jazyk, využívaný pri tvorbe aplikácií ovládania mobilných telefónov až po vytváranie web-aplikácií. Vlastnosti technológie JavaFX vo verzii 1.2, jej výhody aj nevýhody. Spolupráca s databázami a webovými službami. Vytvorenie webovej aplikácie prístupu na rozvrh FM využívajúcej MySQL databázu. | ||
− | | | + | |Description of JavaFX technology, its potential application in practice, comparison with other similar technologies. JavaFX as a multi-platform object-oriented programming language used to create applications, control of mobile phones to create web applications. Properties JavaFX technology in version 1.2, its advantages and disadvantages. Working with databases and Web services. Create a web application access to the schedule of FM using MySQL database. |
}} | }} | ||
+ | |||
'''Úvod''' | '''Úvod''' | ||
Riadok 39: | Riadok 23: | ||
=Čo je JavaFX= | =Čo je JavaFX= | ||
+ | V tejto kapitole popíšem programovací jazyk JavaFX a jeho súčasti a zátoveň uviesť príklad aplikácie prepojenej na internet. | ||
+ | |||
+ | JavaFX Script je skriptovací jazyk vyvinutý za účelom zjednodušenia vytvárania grafických používateľských rozhraní (GUI) pre vývojárov, programátorov a výrobcov internetových stránok, ktorý patrí do technológie JavaFX. Je to deklaratívny, staticky typovaný, objektovo orientovaný programovací jazyk. Jeho hlavnými vlastnosťami sú: | ||
+ | *deklaratívna syntax | ||
+ | *inkrementálne vyhodnocovanie a triggre, podporujúce štruktúru model-view zoznamy | ||
+ | *schopnosť využívať triedy jazyka Java | ||
+ | *znovupoužiteľnosť, enkapsulácia a prenositeľnosť (write once - run anywhere) zdedená od jazyka Java | ||
+ | *zrozumiteľnosť a ľahká čitateľnosť | ||
+ | Skriptovací jazyk bol vyvinutý tak, aby jeho syntax odrážala rozloženie komponentov v GUI a umožnil tak ľahšie vytváranie bohatých grafických aplikácií. Taktiež sa pomocou neho dá vytvoriť omnoho efektívnejší kód čo sa rozsahu týka. | ||
+ | Na konferencii JavaOne v máji 2008, Sun Microsystems oznámila novú produktovú radu s názvom JavaFX, zložený z JavaFX Script a JavaFX Mobile. Skriptovací jazyk JavaFX má za cieľ uľahčiť používanie JavaSwing knižníc a vytvárať bohaté užívateľské rozhranie, ktoré bude prebiehať kdekoľvek, kde Java Standard Edition je podporovaný. | ||
+ | |||
+ | ==JavaFX Mobile== | ||
+ | JavaFX Mobile je kompletný softvérový systém pre mobilné zariadenia. Je dostupný prostredníctvom licencií OEM pre telefónne spoločnosti, headset výrobcov a iné spoločnosti, ktoré chcú zjednodušiť a urýchliť vývoj výkonného štandardizovaného softvérového systému. | ||
+ | Nemôžete vždy predpovedať, aké zariadenia alebo platformy budú konzumenti používať a s JavaFX to ani nie je potrebné. Na rozdiel od iných platforiem zariadení, ktoré sú vytvorené okolo patentovaných technológií, JavaFX Mobile používa technológie, ktoré sú v súlade so štandardmi v odvetví, čo znamená, že aplikácie vytvorené prostredníctvom JavaFX budú fungovať na širokej škále zariadení s podporou Java a poskytovatelia obsahu ich môžu rýchlo pridať do svojich zariadení. Najnovšie štandardy, a to vrátane štandardov pre "Mobile Services Architucture", sú pevne integrované s JavaFX Mobile, takže vývojári majú bohaté možnosti. JavaFX Mobile zjednodušuje prostredie a znižuje závislosť na technológiách vykonávajúcich kompletný middleware a aplikáciách hromadiacimi sa v Jave. | ||
+ | |||
+ | ==JavaFX Script== | ||
+ | Tento objektovo orientovaný programovací jazyk JavaFX Script umožňuje vývojárom Java rýchlo vytvoriť plnohodnotné internetové aplikácie pre najväčší rozsah klientskych zariadení, a to vrátane mobilných zariadení, koncových prijímačov, pracovných staníc a dokonca aj diskov Blue-ray. Tvorcovia obsahu môžu jednoduchým spôsobom vyvinúť obsah pre akékoľvek spotrebiteľské zariadenie s podporou Java. | ||
+ | JavaFX umožňuje tvorcom obsahu vytvárať bohatý mediálny obsah bez toho, aby sa museli spoliehať na vývojárov, a to vrátane drag-and-drop mobilného obsahu na pracovnú plochu a opačne, čiže niečo, čo nie je možné pri žiadnom inom RIA. | ||
+ | JavaFX Script ponúka tesnú integráciu s inými komponentmi Java (aplikácie a infraštruktúra), ktoré fungujú na serveroch a klientskych platformách, čo ponúka vývojárom a používateľom plnohodnotné aplikácie. | ||
+ | JavaFX Script využíva bezpečnostný model Java, takže zákazníci majú bezpečný prístup k aktívam (napr. obrázkom, hudobným súborom, wordovským dokumentom) na svojich pracovných plochách. | ||
+ | Spotrebitelia zvyčajne hľadajú na webe vzrušujúci a dynamický obsah a očakávajú viac interaktívnych skúseností s webovými službami. JavaFX môže pomôcť dodať vizuálne pôsobivé aplikácie, ako napríklad mapy a "mashups", videá, zvuky a obrázky. Nový programovací jazyk sa dá detailne integrovať s inými komponentmi Java, ktoré už fungujú na serveroch a klientskych zariadeniach. A vzhľadom na to, že je vytvorený s pomocou otvorených štandardov, technológie JavaFX ponúkajú spoločnostiam vytvárajúcim plnohodnotné internetové aplikácie kratší čas dodania na trh a zdokonalenú konzistenciu pre aplikácie a zariadenia. | ||
+ | V septembri 2008 spoločnosť Google predstavila vlastný internetový prehliadač Chrome, ktorý sa ihneď prezentoval aj tým, že plne podporuje aj JavaFX, podobne ako ostatné prehliadače ako sú Internet Explorer, Mozilla Firefox, Opera, či Chrome. | ||
+ | Ako služba webových klientov by sa dala JavaFX porovnať s Ruby, Python, JSP a Linden Scripting Language .Čo tieto rôznorodé jazyky majú spoločné to zámer, aby sa programovanie zložitých aplikácií jednoduchšie tým, že poskytuje jednoduchý spôsob, ako pripojiť existujúce komponenty. V prípade JavaFX, sú to Swing komponenty užívateľského rozhrania, ktoré sa prvýkrát objavili v štandardnej knižnici Javy. Verzia 1.2 je doplnená tiež o trochu jednoduchšie nástroje Java AWT. | ||
+ | |||
+ | ==PočasieFX v JavaFX script== | ||
+ | Tento program som tvoril ako námet svojej bakalárskej práce. Je to program, ktorý som navrhol a zrealizoval programovacom jazyku JavaFX script. Jedná sa o aplikáciu, ktorá bude obsluhe PC alebo užívateľovi domáceho centra zábavy zobrazovať aktuálne on-line počasie, ako aj predpoveď na jeden deň vopred, v piatich slovenských mestách, v slovenčine, a to len jediným kliknutím, alebo jedným stlačením diaľkového ovládača. | ||
+ | Po spustení naskočí takzvaný loading screen, ktorý informuje užívateľa o tom, že program pracuje na pripojení na internet a stiahnutí potrebných údajov z rss stránky yahoo.apis.com. Po načítaní dát a spracovaní do grafikcej podoby sa zobrazí päť okien, ktoré predstavujú prierez počasia na celom Slovensku. V každom okne sa okrem názvu mesta a aktuálnej teploty, ktorá dominuje v okne, zobrazuje aj predpokladaná najvyššia denná a najnižšia nočná teplota, rýchlosť a smer vetra. Nemenej dôležitá informácia je zobrazovaná na pozadí obrázkom. Ak je noc, tak je vidieť mesiac, ak jasno, tak slniečko, ak prší, tak z oblakov sa naanimujú kvapky, a pri snežení snehové vločky. Ďaľšou možnosťou je prepnutie okna do módu zajtra, kde je znázornená len povaha počasia a najvyššia denná a najnižšia nočná teplota. | ||
+ | [[Súbor:bpmv1.png|center|Obr. 1 PočasieFX Slovensko]] |
Aktuálna revízia z 21:23, 5. február 2010
![]() |
Trenčianska Univerzita Alexandra Dubčeka v Trenčíne
Fakulta mechatroniky Katedra informatiky |
![]() |
Autor: | Bc. Martin Vaško |
Pedagogický vedúci: | Ing. Juraj Ďuďák |
Študijný odbor: | Mechatronika |
Akademický rok | 2009/2010 |
1. | Čo je JavaFX |
2. | JavaFX 1.2 |
3. | Tvorba JavaFX aplikácie
|
Abstrakt
Popis technológie JavaFX, jej možnosti uplatnenia v praxi, porovnanie s inými podobnými technológiami. JavaFX ako objektovo orientovaný multiplatformný programovací jazyk, využívaný pri tvorbe aplikácií ovládania mobilných telefónov až po vytváranie web-aplikácií. Vlastnosti technológie JavaFX vo verzii 1.2, jej výhody aj nevýhody. Spolupráca s databázami a webovými službami. Vytvorenie webovej aplikácie prístupu na rozvrh FM využívajúcej MySQL databázu. |
Abstract
Description of JavaFX technology, its potential application in practice, comparison with other similar technologies. JavaFX as a multi-platform object-oriented programming language used to create applications, control of mobile phones to create web applications. Properties JavaFX technology in version 1.2, its advantages and disadvantages. Working with databases and Web services. Create a web application access to the schedule of FM using MySQL database. |
Úvod
Spoločnosť SUN, aby sa udržala na trhu, bola nútená oživiť aplikáciu Appletov (relatívne jednoduchá aplikácia, ktorá sa spúšťa z WWW prehliadača - browsera). Za touto revitalizáciou stojí práve JavaFX, ktorej web verzia potrebuje pre svoj beh hostiteľský kontajner a Applety. Dva z najpálčivejších problémov appletov sú rýchlosť štartu a nutnosť nainštalovaného JRE. Problém, respektíve nutnosť nainštalovaného kontajneru riešil aj Flash, a ako sa zdá, stačilo iba okresať veľkosť inštalačného balíčku pod 3MB. S veľkosťou samotného JRE súvisí aj to, aký rýchly bude jeho štart, preto SUN chystá takzvanú Consumer JRE, ktorá bude „orezanejšia“ a ďalšiu funkčnosť bude možné pridať formou modulov. Ako je vidieť, sú tu technologické prostriedky pre odstránenie najhorúcejších problémov Appletov. Otázkou zostáva, či sa podarí odstrániť problém v rovine sociálnej, čo znamená, že Applety nie sú tak dôveryhodnou technológiou ako napríklad už spomínaný Flash. Technologický pokrok je prvým malým krôčikom k tomu, aby užívatelia sa začali na Applety pozerať trochu inak.
Čo je JavaFX
V tejto kapitole popíšem programovací jazyk JavaFX a jeho súčasti a zátoveň uviesť príklad aplikácie prepojenej na internet.
JavaFX Script je skriptovací jazyk vyvinutý za účelom zjednodušenia vytvárania grafických používateľských rozhraní (GUI) pre vývojárov, programátorov a výrobcov internetových stránok, ktorý patrí do technológie JavaFX. Je to deklaratívny, staticky typovaný, objektovo orientovaný programovací jazyk. Jeho hlavnými vlastnosťami sú:
- deklaratívna syntax
- inkrementálne vyhodnocovanie a triggre, podporujúce štruktúru model-view zoznamy
- schopnosť využívať triedy jazyka Java
- znovupoužiteľnosť, enkapsulácia a prenositeľnosť (write once - run anywhere) zdedená od jazyka Java
- zrozumiteľnosť a ľahká čitateľnosť
Skriptovací jazyk bol vyvinutý tak, aby jeho syntax odrážala rozloženie komponentov v GUI a umožnil tak ľahšie vytváranie bohatých grafických aplikácií. Taktiež sa pomocou neho dá vytvoriť omnoho efektívnejší kód čo sa rozsahu týka. Na konferencii JavaOne v máji 2008, Sun Microsystems oznámila novú produktovú radu s názvom JavaFX, zložený z JavaFX Script a JavaFX Mobile. Skriptovací jazyk JavaFX má za cieľ uľahčiť používanie JavaSwing knižníc a vytvárať bohaté užívateľské rozhranie, ktoré bude prebiehať kdekoľvek, kde Java Standard Edition je podporovaný.
JavaFX Mobile
JavaFX Mobile je kompletný softvérový systém pre mobilné zariadenia. Je dostupný prostredníctvom licencií OEM pre telefónne spoločnosti, headset výrobcov a iné spoločnosti, ktoré chcú zjednodušiť a urýchliť vývoj výkonného štandardizovaného softvérového systému. Nemôžete vždy predpovedať, aké zariadenia alebo platformy budú konzumenti používať a s JavaFX to ani nie je potrebné. Na rozdiel od iných platforiem zariadení, ktoré sú vytvorené okolo patentovaných technológií, JavaFX Mobile používa technológie, ktoré sú v súlade so štandardmi v odvetví, čo znamená, že aplikácie vytvorené prostredníctvom JavaFX budú fungovať na širokej škále zariadení s podporou Java a poskytovatelia obsahu ich môžu rýchlo pridať do svojich zariadení. Najnovšie štandardy, a to vrátane štandardov pre "Mobile Services Architucture", sú pevne integrované s JavaFX Mobile, takže vývojári majú bohaté možnosti. JavaFX Mobile zjednodušuje prostredie a znižuje závislosť na technológiách vykonávajúcich kompletný middleware a aplikáciách hromadiacimi sa v Jave.
JavaFX Script
Tento objektovo orientovaný programovací jazyk JavaFX Script umožňuje vývojárom Java rýchlo vytvoriť plnohodnotné internetové aplikácie pre najväčší rozsah klientskych zariadení, a to vrátane mobilných zariadení, koncových prijímačov, pracovných staníc a dokonca aj diskov Blue-ray. Tvorcovia obsahu môžu jednoduchým spôsobom vyvinúť obsah pre akékoľvek spotrebiteľské zariadenie s podporou Java. JavaFX umožňuje tvorcom obsahu vytvárať bohatý mediálny obsah bez toho, aby sa museli spoliehať na vývojárov, a to vrátane drag-and-drop mobilného obsahu na pracovnú plochu a opačne, čiže niečo, čo nie je možné pri žiadnom inom RIA. JavaFX Script ponúka tesnú integráciu s inými komponentmi Java (aplikácie a infraštruktúra), ktoré fungujú na serveroch a klientskych platformách, čo ponúka vývojárom a používateľom plnohodnotné aplikácie. JavaFX Script využíva bezpečnostný model Java, takže zákazníci majú bezpečný prístup k aktívam (napr. obrázkom, hudobným súborom, wordovským dokumentom) na svojich pracovných plochách. Spotrebitelia zvyčajne hľadajú na webe vzrušujúci a dynamický obsah a očakávajú viac interaktívnych skúseností s webovými službami. JavaFX môže pomôcť dodať vizuálne pôsobivé aplikácie, ako napríklad mapy a "mashups", videá, zvuky a obrázky. Nový programovací jazyk sa dá detailne integrovať s inými komponentmi Java, ktoré už fungujú na serveroch a klientskych zariadeniach. A vzhľadom na to, že je vytvorený s pomocou otvorených štandardov, technológie JavaFX ponúkajú spoločnostiam vytvárajúcim plnohodnotné internetové aplikácie kratší čas dodania na trh a zdokonalenú konzistenciu pre aplikácie a zariadenia. V septembri 2008 spoločnosť Google predstavila vlastný internetový prehliadač Chrome, ktorý sa ihneď prezentoval aj tým, že plne podporuje aj JavaFX, podobne ako ostatné prehliadače ako sú Internet Explorer, Mozilla Firefox, Opera, či Chrome. Ako služba webových klientov by sa dala JavaFX porovnať s Ruby, Python, JSP a Linden Scripting Language .Čo tieto rôznorodé jazyky majú spoločné to zámer, aby sa programovanie zložitých aplikácií jednoduchšie tým, že poskytuje jednoduchý spôsob, ako pripojiť existujúce komponenty. V prípade JavaFX, sú to Swing komponenty užívateľského rozhrania, ktoré sa prvýkrát objavili v štandardnej knižnici Javy. Verzia 1.2 je doplnená tiež o trochu jednoduchšie nástroje Java AWT.
PočasieFX v JavaFX script
Tento program som tvoril ako námet svojej bakalárskej práce. Je to program, ktorý som navrhol a zrealizoval programovacom jazyku JavaFX script. Jedná sa o aplikáciu, ktorá bude obsluhe PC alebo užívateľovi domáceho centra zábavy zobrazovať aktuálne on-line počasie, ako aj predpoveď na jeden deň vopred, v piatich slovenských mestách, v slovenčine, a to len jediným kliknutím, alebo jedným stlačením diaľkového ovládača. Po spustení naskočí takzvaný loading screen, ktorý informuje užívateľa o tom, že program pracuje na pripojení na internet a stiahnutí potrebných údajov z rss stránky yahoo.apis.com. Po načítaní dát a spracovaní do grafikcej podoby sa zobrazí päť okien, ktoré predstavujú prierez počasia na celom Slovensku. V každom okne sa okrem názvu mesta a aktuálnej teploty, ktorá dominuje v okne, zobrazuje aj predpokladaná najvyššia denná a najnižšia nočná teplota, rýchlosť a smer vetra. Nemenej dôležitá informácia je zobrazovaná na pozadí obrázkom. Ak je noc, tak je vidieť mesiac, ak jasno, tak slniečko, ak prší, tak z oblakov sa naanimujú kvapky, a pri snežení snehové vločky. Ďaľšou možnosťou je prepnutie okna do módu zajtra, kde je znázornená len povaha počasia a najvyššia denná a najnižšia nočná teplota.