JavaFX Kurs

Tehnologija JavaFX, kojom će se ovaj kurs baviti, nastala je 2007. godine kada ju je kompanija Sun Microsystems plasirala na tržište kako bi omogućila razvoj bogatih grafičkih aplikacija za širok spektar uređaja, kao što su računari, mobilni telefoni, televizori, automobilski intertainment sistemi i slično. JavaFX je zamišljen kao sveobuhvatno rešenje za razvoj klijentske logike, odnosno grafičkog korisničknog okruženja svuda gde je programski jezik Java u upotrebi.

Razvoj JavaFX tehnologije započeo je još 2005. godine, kada je kompanija Sun Microsystems preuzela kompaniju SeeBeyond, koja je inicijalni tvorac ove tehnologije. Od tada, pa sve do danas, JavaFX tehnologija je prevalila veliki put, konstantnim unapređivanjima sa svakom novom verzijom Java jezika. Tako je danas pred nama jedna zrela tehnologija, koja nudi moderan pristup za kreiranje korisničkog okruženja Java aplikacija.

JavaFX predstavlja najnoviju tehnologiju koja se unutar Java platforme koristi za programiranje, dizajniranje, testiranje i debug korisničkog okruženja Java aplikacija. Ovo je tehnologija koja omogućava kreiranje UI-ja Java aplikacija na moderan i konzistentan način, s posebnim akcentom na prilagodljivost različitim tipovima uređaja na kojima se Java izvršava. JavaFX omogućava razdvajanje prezentacione i pozadinske logike, tako što programerima omogućava stilizovanje korisničkog okruženja korišćenjem novog skript jezika FXML, ali i korišćenjem CSS-a, dobro poznatog jezika za stilizovanje koji se pretežno koristi na webu.

Zanima vas ovaj kurs? Možete ga pohađati u okviru ovih ITAcademy programa: Java Development Program.

Opis i cilj JavaFX kursa

Na ovom kursu imaćete priliku da se obučite za samostalno kreiranje grafičkog korisničkog interfejsa kroz upotrebu Java FX-a. Da biste bez problema razvijali nove veštine i usvajali korisna znanja koja ovaj kurs nudi neophodno je da prethodno uspešno završite kurseve Core Java Programming, Advanced Java Programming, Uvod u HTML i CSS, Java web servisi i XML, koji su takođe deo plana i programa na odseku Java Development.

JavaFX kurs podeljen je u pet modula, kroz koje će vas iskusni predavači, korak po korak, upoznavati sa svim potrebnim veštinama i postepeno vas uvoditi u najkompleksnija znanja iz ove oblasti.  

Prve nastavne jedinice baviće se uvođenjem polaznika u Java FX svet, a zatim i njihovim obučavanjem za kreiranje prve Java FX aplikacije. Osim toga, tokom prve tematske celine kursa naučićete i šta su pojmovi poput Java FX properties, binding, kao i observable collections. 

Zatim sledi modul koji će biti posvećen osnovnim elementima Java FX UI-ja, odnosno detaljnijim upoznavanjem sa pojmom stage (pozornica), koji čini temelj kreiranja svake aplikacije. Tom prilikom naučićete šta je stage, kako se podešavaju njegove dimenzije i stilovi, ali i sve ostalo što vam je potrebno da biste potpuno savladali pojam stage Java FX aplikacije. Ovaj deo ponudiće vam i znanja o tome šta je scena, kako se kreira i šta predstavlja pojam node. 

Nakon toga, treći modul fokusiraće se na komponente koje se nazivaju kontejneri ili Java FX Layout panes. Uz to ćete naučiti i da rukujete HBox i VBox kontrolama i upoznati se sa pojmovima FlowPane i TilePane. Modul broj 5 predstaviće vam najznačajnije kontrole dostupne u Java FX grafičkom sistemu, dok ćete se u poslednjoj tematskoj celini upoznati sa svim značajnim funkcionalnostima Java FX-a.  

Cilj ovog kursa je da se svi polaznici upoznaju sa osnovnim konceptima Java FX-a, deklarativnom sintaksom, alatima za razvoj Java FX aplikacija i praktičnom primenom. Nakon uspešno završenog kursa bićete osposobljeni za rad sa Java FX API-jima i razvoj aplikacija sa grafičkim korisničkim okruženjem korišćenjem Java FX-a.

Kurs JavaFX će vam odgovoriti na pitanja:

1. Šta je JavaFX?

JavaFX je zamišljen kao primarna tehnologija za razvoj bogatih grafičkih aplikacija za širok spektar uređaja, kao što su računari, mobilni telefoni, televizori, automobilski entertainment sistemi i slično. Zbog nedostatka modernog okvira za savremeni pristup razvoju grafičkih korisničkih okruženja, novi pristup razvoju GUI-a nametnuo se kao logičan korak. Iako Java AWT i Swing imaju pregršt funkcionalnosti, definisanje grafičkog korisničkog interfejsa korišćenjem ovih tehnologija poseduje brojne nedostatke, koji se pre svega odnose na otežano održavanje. Obe tehnologije za definisanje grafičkog korisničkog okruženja koriste proceduralni pristup, to jest Java kod. Sa druge strane, JavaFX omogućava jednostavno i elegantno korišćenje deklarativnog pristupa prilikom razvoja grafičkog korisničkog interfejsa. U kursu JavaFX iznet je pregled ove tehnologije i najznačajnijih tehnika za kreiranje grafičkog korisničkog interfejsa korišćenjem JavaFX-a.

2. Šta su Stage, Scene i Node?

Kreiranje grafičkog korisničkog okruženja upotrebom tehnologije JavaFX apstrahovano je korišćenjem pojmova Stage, Scene i Node. To su osnovni pojmovi kojima će polaznici baratati prilikom upoznavanja razvoja JavaFX aplikacija.

Ukoliko znate da Stage u stvari znači pozornica, lako se može zaključiti da se ovaj koncept koristi za prikazivanje neke scene. Tako se može reći da scena predstavlja vizuelni sadržaj Stagea. Scena se sastoji iz vizuelnih elemenata kao što su tekst, oblici, slike, kontrole, animacije i efekti, sa kojima korisnik može imati interakciju. Svi takvi elementi su unutar scene predstavljeni korišćenjem stabla (grafa) čvorova. Može se reći da se scena ponaša kao kontejner za upravo spomenuto stablo čvorova (tree of nodes). Čvorovi predstavljaju vizuelne elemente koji mogu postojati na jednoj sceni, to jest, osnovni vizuelni element scene jeste čvor (node).

3. Šta su JavaFX kontejneri?

Baš kao što je to bio slučaj i kod ostalih biblioteka za kreiranje grafičkog korisničkog okruženja, JavaFX kontrole od kojih je sačinjen user interface grupišu se i raspoređuju korišćenjem specijalnih elemenata koji se nazivaju kontejneri. Kontejneri su zapravo komponente koje sadrže druge komponente, a kod tehnologije JavaFX one se nazivaju Layout Panes.

Kontejneri su osnovne komponente koje diktiraju način na koji će grafički elementi biti raspoređivani unutar grafičkog korisničkog okruženja. Unutar JavaFX-a postoje dva načina za pozicioniranje komponenata u okviru scene: statičko i dinamičko pozicioniranje. Oba načina raspoređivanja, izučavanjem različitih kontejnerskih elemenata, detaljno su obrađena tokom trajanja kursa JavaFX.

JavaFX kurs

4. Kako se koriste JavaFX kontrole?

Poznavanje osobina i ponašanja kontrola od kojih je sačinjeno grafičko korisničko okruženje spada u osnovne zadatke programera koji se bavi razvojem UI-a. Zbog toga je u kursu JavaFX posebna pažnja posvećena upoznavanju osobina različitih kontrola. Polaznici će imati prilike da se upoznaju sa različitim kontrolama za obradu teksta, kao što su TextField, PasswordField i TextArea. Biće obrađene i kontrole koje omogućavaju izbor jedne ili više ponuđenih opcija: Toggle kontrole (ToggleButton, CheckBox i RadioButton), ChoiceBox, ComboBox i ListView. Na kraju, unutar kursa JavaFX biće predstavljene i različite kontrole kojima korisnik može da aktivira određene akcije (Button, Hyperlink). U okviru dodatnih materijala, polaznici će, ukoliko žele, moći da ukratko saznaju više o nekim od naprednih JavaFX kontrola (TableView, DatePicker, HTMLEditor i Pagination), kao i načinu upotrebe nekih od efekata transformacija i tranzicija nad JavaFX kontrolama i kontejnerima.

5. Šta je FXML?

Dve starije biblioteke za kreiranje grafičkog korisničkog okruženja Java aplikacija, AWT i Swing, podrazumevale su programabilno kreiranje UI-a, korišćenjem različitih klasa i interfejsa. Istina je da takav sistem nudi slabu razdvojenost slojeva aplikacija, malu preglednost i smanjenu efikasnost rada. Stoga je opšta tendencija u razvoju UI-a za različite platforme kreiranje UI-a deklarativno, korišćenjem jezika zasnovanih na XML-u. Kao moderan UI framework, i JavaFX omogućava takvo kreiranje UI-a, upotrebom specijalnog jezika koji se naziva FXML. FXML je jezik zasnovan na XML-u koji se koristi za deklarativnu izgradnju interfejsa JavaFX aplikacija. Tokom kursa JavaFX polaznici će imati mogućnost da upoznaju sintaksu i upotrebu ovog jezika.

6. Kako stilizovati JavaFX aplikacije?

Proces stilizovanja spada u najznačajnije kada je reč o razvoju aplikacija sa grafičkim korisničkim okruženjem. JavaFX platforma obezbeđuje veoma moćan sistem za stilizovanje aplikacija, sa kojim će polaznici imati prilike da se upoznaju tokom trajanja kursa JavaFX. Za obavljanje takvog posla, kada je reč o JavaFX-u, moguće je koristiti opisni jezik CSS.

Svakome ko ima makar malo iskustva u radu sa web aplikacijama pojam CSS ne bi smeo da bude nepoznat. CSS je jezik koji se koristi za opis prezentacionog sloja aplikacija sa grafičkim korisničkim interfejsom. CSS je primarno razvijen za web, odnosno za stilizovanje HTML strana, ali je pored toga našao i druge upotrebe. JavaFX omogućava definisanje izgleda aplikacije korišćenjem CSS-a. Ovo omogućava odličnu razdvojenost slojeva aplikacije, pogotovu u kombinaciji sa FXML-om.

7. Kako koristiti MVC prilikom razvoja JavaFX aplikacija?

Pojam dizajn softverskih šablona za polaznike Java Development smera na ITAcademy nije nepoznanica. Naime, sa različitim dizajn šablonima polaznici imaju prilike da se upoznaju tokom različitih kurseva. Tokom kursa JavaFX, jedan od takvih dizajn šablona se koristi prilikom razvoja Java aplikacija sa JavaFX grafičkim korisničkim okruženjem. Reč je o softverskom šablonu Model–View–Controller.

MVC je jedan od najstarijih softverskih šablona koji se bave problematikom kreiranja troslojne aplikativne strukture. Naime, prilikom razvoja aplikacija nastoji se da se razvija što nezavisniji domenski deo, to jest domenski deo koji uopšte nema saznanja o prezentacionom delu. Ovakav pristup donosi brojne prednosti. Domenski deo se razvija jednom, a zatim se može koristiti u kombinaciji sa različitim prezentacionim slojevima. Blagodeti korišćenja MVC-a prilikom razvoja JavaFX aplikacija polaznici će upoznati tokom trajanja kursa JavaFX.

Plan i program predavanja:

1. Uvod u Java FX 

  • Uvod u Java FX svet 
  • Kreiranje prve Java FX aplikacije 
  • Šta predstavlja pojam Java FX properties? 
  • Kako funkcioniše Java FX bindings? 
  • Upoznavanje polaznika sa observable kolekcijama 

2. Osnovni elementi Java FX UI-ja 

  • Šta je stage? 
  • Upoznavanje sa pojmovima scena i node 

3. Kontejneri 

  • Uvod u korišćenje Layout Panea 
  • Kako se koriste HBox i VBox kontrole?
  • Upoznavanje sa pojmovima FlowPane i TilePane 
  • BorderPane i StackPane 
  • Šta je GridPane 5?
  • AnchorPane i TextFlow 

4. Kontrole 

  • Label, Button, Hyperlink 
  • ToggleButton, CheckBox, RadioButton 
  • ChoiceBox, ComboBox, ListView 
  • TextField, PasswordField, TextArea 

5. Java FX funkcionalnosti 

  • Kreiranje UI-ja korišćenjem FXML-a 
  • Stilizovanje UI-ja korišćenjem CSS-a 
  • Razvoj aplikacija korišćenjem MVC-a

Polaznici kursa Java FX

3 načina da dobijete odlično plaćen posao

Spremili smo dokument koji otkriva tri pouzdana načina za dolazak na dobro plaćenu poziciju za stručan rad sa računarima. Preuzmite izveštaj ovde.

Da li ima mesta? Upisni rok 2024/25. je u toku.

Da saznate sve o upisu, kliknite ovde.

Prijavite se