Kurs Java Desktop Application Development

U okviru kursa Java Desktop Application Development usvojićete tehnike koje će vam pomoći da uz programski jezik Java i SWING biblioteke kreirate grafički korisnički interfejs, odnosno GUI.

GUI, odnosno Graphical User Interface, što u prevodu znači grafički korisnički interfejs, predstavlja softversko okruženje koje vam omogućava adekvatnu komunikaciju sa računarom uz upotrebu prethodno definisanih funkcija.

Za razvoj grafičkog korisničkog interfejsa najzaslužniji su operativni sistemi Apple Macintosh i Microsoft Windows. Zahvaljujući njima grafički korisnički interfejs uspeo je u potpunosti da zameni do tada nepraktične tekstualne interfejse koji su bili veoma komplikovani za upotrebu.

Znanja koja steknete tokom ovog kursa kvalifikovaće vas za rad u Javi, odnosno za jednu od brojnih mogućnosti koje ovaj programski jezik pruža. Java se koristi za kreiranje brojnih aplikaciija i njihovu implementaciju u najrazličitija multiplatformska okruženja.

Uz to, Java platforme imaju široku upotrebu u programiranju, kao i u mnogim primenjenim softverskim rešenjima. Ipak, ono što je Javu učinilo veoma popularnim jeste sve veća upotreba prilikom izrade aplikacija za mobilne telefone i tablete kroz Android operativni sistem.

U svetu informacionih tehnologija Java se već godinama unazad ustalila kao programski jezik koji vam pored prilike da pronađete posao brzo i lako, može omogućiti i odličnu zaradu. Upravo zbog svih ovih prednosti i široke primene Jave, ovaj programski jezik zaslužio je epitet jednog od najboljih izbora prilikom započinjanja uspešne karijere u sektoru informacionih tehnologija.

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

Opis i cilj kursa Java Desktop Application Development

Za vreme trajanja kursa Java Desktop Application Development polaznici će imati prilike da steknu korisna znanja i praktične veštine, odnosno da se upoznaju sa različitim tehnikama za kreiranje grafičkog korisničkog interfejsa i desktop aplikacija pomoću Jave i AWT i Swing biblioteka. U kursu će biti reči o osnovnim i naprednim kontrolama, kontejnerskim elementima i različitim Swing funkcionalnostima, koje omogućavaju kreiranje bogatog grafičko-korisničkog okruženja.

Zbog jednostavnijeg učenja i praćenja gradiva kompletan kurs je podeljen u pet tematskih celina, odnosno modula.

Prvi modul će pomoći polaznicima da nauče šta je AWT (Abstract Window Toolkit), koji omogućava rukovanje grafičkim korisničkim interfejsom u programskom jeziku Java. Korišćenjem ove biblioteke klasa moći će da kreiraju programe koji se izvršavaju u prozoru i imaju grafičko okruženje. Osim toga, ovaj deo kursa obezbediće tehnike pomoću kojih će rukovati dvodimenzijalnom grafikom, tekstom i slikama.

U drugom delu kursa akcenat je na upoznavanju polaznika sa onim što ih očekuje tokom narednih modula. Takođe, tokom tog modula polaznici će imati priliku da saznaju šta je to GUI (Graphical User Interface) i kada se koristi. Osim toga, naučiće i sve što im je potrebno o Javinoj Swing biblioteci.

Treća tematska celina posvećena je upoznavanju sa osnovama Swing komponenata. Tom prilikom polaznici će dobiti kompletnu sliku o klasama JLabel, JButton i JTextComponent, ali i o tome šta su i kako se koriste jednostavne i stilizovane tekst kontrole. Kako lekcije budu odmicale, polaznici će se upoznati i sa ostalim klasama, kao što su JToggleButton, JDialog, JColorChooser i JFileChooser. Biće obučeni i za rukovanje Swing kontrolama uz upotrebu IntelliJ IDEA dizajnera.

Fokus četvrtog modula kursa Java Desktop Application Development je na upravljanju Swing događajima, odnosno upotrebi fokusa i povezivanju kontrola. Tokom ovih lekcija polaznici će naučiti kako se kreiraju klase događaja, kao i interfejs za njihove slušače. Zatim, polaznici će raditi na konkurentnom programiranju u Swingu, dok će se poslednji deo ove tematske celine baviti upotrebom akcija i Swing Timer klasa.

Na kraju, kroz završni modul polaznici će se baviti nekim od naprednih Swing komponenata.

Cilj kursa je osposobljavanje polaznika za praktičnu upotrebu Jave u realizaciji konkretnih problema. Nakon uspešno završenog kursa polaznici će biti spremni da samostalno kreiraju kompletan grafički interfejs Java aplikacije, kao i da implementiraju funkcionalnosti za grafičke kontrole. Osim toga, cilj je da pomoću tehnika koje budu stekli tokom kursa, nakon završetka polaznici budu osposobljeni za samostalno kreiranje funkcionalne desktop aplikacije pomoću programskog jezika Java i IntelliJ IDEA alata.

Kurs Java Desktop Application Development će vam odgovoriti na pitanja:

1. Šta je AWT?

Razvoj aplikacija sa grafičkim korisničkim okruženjem predstavlja posebnu oblast Java programiranja, koja podrazumeva kreiranje aplikacija koje, pored svoje unutrašnje logike, poseduju i prezentacioni, grafički sloj, koji se koristi za interakciju sa korisnikom i prezentovanje rezultata obrade. Štaviše, verovatno je najveći broj aplikacija sa kojima ste se susretali do sada pripadao upravo ovom tipu aplikacija.

Kreiranje grafičkog korisničkog okruženja prilikom razvoja Java aplikacija može se obaviti na različite načine. Osnovni sistem koji takvo nešto omogućava naziva se Java Abstract Window Toolkit ili skraćeno AWT. Reč je o biblioteci klasa koja omogućava rukovanje grafičkim korisničkim interfejsom u Javi. Tokom trajanja kursa Java Desktop Application Development, AWT će vam poslužiti kao osnovni, bazični sistem za upoznavanje procesa dizajniranja i kreiranja korisničkog okruženja Java aplikacija. Nakon toga, u modulima koji slede imaćete priliku da se upoznate i sa ostalim, naprednijim sistemima za obavljanje identičnog posla.

2. Šta je Swing?

Razvoj aplikacija sa grafičkim korisničkim okruženjem zauzima posebno mesto u današnjem modernom programiranju. Grafičko korisničko okruženje, ili skraćeno GUI, je osnovni, a najčešće i jedini način za komunikaciju korisnika sa aplikacijom. Iz ugla korisnika GUI se manifestuje korišćenjem različitih kontrola i grafičkih elemenata. Za programera ove kontrole su način da se korisniku omogući ulaz u program, kao i samu kontrolu toka programske logike.

Kada je u pitanju programski jezik Java, programeru je na raspolaganju nekoliko različitih biblioteka za realizaciju grafičkog korisničkog okruženja.

U okviru kursa Java Desktop Application Development polaznici će usvojiti tehnike pomoću kojih će uz programski jezik Java i Swing biblioteke kreirati grafički korisnički interfejs. Dakle, GUI je softversko okruženje koje omogućava adekvatnu komunikaciju sa računarom uz upotrebu prethodno definisanih funkcija.

3. Šta su Swing Layouti?

Prilikom razvoja grafičkog korisničkog okruženja, jedan od najznačajnijih procesa je način na koji se raspoređuju elementi. Način na koji se elementi raspoređuju unutar prozora drugačije se naziva layout. Swing biblioteka poseduje nekoliko layouta, pomoću kojih je moguće elemente raspoređivati na različite načine. Najznačajniji layouti sa kojima će se polaznici upoznati su: BoxLayout, GroupLayout i SpringLayout.

GroupLayout je podrazumevani LayoutManager i najbolje ga je koristiti u kombinaciji sa ugrađenom podrškom razvojnog okruženja. BoxLayout se može koristiti kako bi se kontrole poređale jedna do druge, po vertikalnoj ili horizontalnoj osi. SpringLayout je najmoćniji element za raspoređivanje, a omogućava postavljanje ograničavača, tako da se svaka kontrola smešta na određenu lokaciju, poštujući pravila definisanog ograničavača.

Kurs Java Desktop Application Development

4. Šta su kontejneri?

Pored Swing layouta, integralni deo grafičkog korisničkog okruženja koje se kreira korišćenjem Swinga su i kontejneri. Kontejneri su zapravo elementi višeg nivoa u hijerarhiji komponenata, od kojih je sačinjeno grafičko korisničko okruženje koje se kreira korišćenjem Swinga. Tako kontejneri obezbeđuju prostor na displeju korisničkog uređaja, unutar koga mogu da se nađu ostale kontrole. Različiti kontejneri obezbeđuju različit izgled i ponašanje nekog prozora. Tako se izborom različitih kontejnera mogu stvoriti prozori različitog izgleda i osobina: panel, skrolujući sadržaj, podeljeni sadržaj, sadržaj u tabovima i drugo.

Osnova svake GUI aplikacije je prozor, pa to važi i za Swing aplikacije. U Swingu se prozor predstavlja klasom Jframe, koja spada u top-level kontejnere.

5. Kako da koristite Swing komponente? Šta se može postići korišćenjem Swing komponenata?

Osnova svake biblioteke za kreiranje grafičkog korisničkog okruženja su kontrole koje su na raspolaganju programeru prilikom kreiranja tog korisničkog okruženja. Kontrole su vizuelni, grafički elementi koji obezbeđuju određeno ponašanje. Kontrole su, iz ugla korisnika, osnovni elementi za interakciju sa aplikacijom. Tako se korišćenjem kontrola od korisnika preuzimaju podaci i prezentuju rezultati obrade aplikacije. Ni Swing biblioteka nije izuzetak kada je rad sa kontrolama u pitanju.

U osnovne komponente grafičkog korisničkog okruženja ubrajaju se različite kontrole za prikazivanje teksta i manipulaciju tekstom, kontrole za prikaz dugmića različitih vrsta, liste, dijalozi, comboboxevi itd.

Pored osnovnih Swing kontrola, kurs Java Desktop Application Development obrađuje i napredne Swing kontrole, pomoću kojih je moguće postići kreiranje bogatijeg korisničkog okruženja. Tako će kurs obraditi ImageIcon, kontrolu višestruke namene koja se najčešće koristi za prezentaciju ikonica ili slika unutar Swing aplikacija. Kurs obrađuje i JProgressBar kontrolu, čija je uloga da korisnika obaveštava o napretku neke vremenski zahtevne operacije. Obrađuje se i JSpinner, kontrola koja se koristi za lak odabir neke numeričke vrednosti.

6. Šta su akcije i tajmeri?

Prilikom razvoja aplikacija veoma često se može javiti potreba za izvršavanjem određene logike u pravilnim vremenskim intervalima ili nakon nekog proteklog vremena. Takva funkcionalnost se naziva Timer, a sastavni je deo većine programskih jezika biblioteka specijalne namene. Ni Swing nije izuzetak, te tako ova biblioteka poseduje klasu Timer, koju je moguće koristiti za izvršavanje neke aktivnosti u tačno određeno vreme ili ponavljanje određene aktivnosti više puta u jednakim vremenskim intervalima.

Korišćenje ove klase za postizanje oba opisana ponašanja ilustrovano je u kursu Java Desktop Application Development. Kurs obrađuje i upotrebu akcija, koje se predstavljaju korišćenjem klase Action, a omogućavaju kreiranje naprednih scenarija za aktiviranje određene logike prilikom korisničke interakcije sa kontrolama grafičkog okruženja.

7. Kako u Swingu funkcionišu događaji?

Pojam događaja u programiranju posebnu važnost dobija prilikom razvoja aplikacija sa grafičkim korisničkim okruženjem. Štaviše, grafičko korisničko okruženje je u potpunosti pogonjeno događajima, pa se takva oblast programiranja često naziva i event driven programming. Swing biblioteka poseduje veoma moćan sistem za kreiranje i interpretaciju događaja. Tako je, tokom razvoja Java Swing aplikacija, moguće kreirati i obrađivati događaje nastale iz različitih izvora.

Dva najbitnija zadatka GUI aplikacije su da prikaže podatke korisniku i da ih preuzme od korisnika. Prikazivanje podataka zavisi od kontrole, ali aplikacija sama odlučuje kada će prikazati podatak, te nikada ne može znati kada će neki podatak dobiti od korisnika. Za rešavanje ovog problema Swing koristi Java Event Handling.

Plan i program predavanja:

1. AWT i Java 2D

  • Uvod u 2D grafiku i AWT
  • Java AWT Layouts
  • Java AWT kontrole
  • Java 2D – rukovanje geometrijom
  • Rukovanje tekstom i slikama

2. Uvod u Swing

  • Uvod u Swing – kreiranje prvog Swing prozora
  • Rad sa Swingom u IntelliJ iDEA
  • Swing Layouts
  • Containers

3. Osnovne Swing komponente

  • JComponent
  • JLabel i JButton
  • Kontrole za manipulaciju tekstom
  • JToggleButton
  • Dijalozi
  • JComboBox
  • JList
  • Kreiranje korisničke kontrole (Bean)

4. Swing funkcionalnosti

  • Swing Event Listeneri
  • Niti u Swingu
  • Upotreba akcija i Timera

5. Napredne Swing komponente

  • ImageIcon
  • JSpinner
  • JProgressBar i JSlider

Kompetencije

  • Poznavanje osnova GUI-ja i korišćenja AWT-a i Java 2D API-ja
  • Korišćenje kontejnera i layouta u Java Swingu i poznavanje načina strukturiranja
  • top-level kontejnera
  • Korišćenje osnovnih komponenata Java Swinga i poznavanje tehnika kreiranja Java Beana
  • Poznavanje pojmova kao što su Binding, Timer i njihova upotreba u Swingu; korišćenje niti
  • Poznavanje naprednih kontrola dostupnih u Swingu

Potreban softver i tehnički uslovi

Potrebno je imati računar sa instaliranim Windows/Linux/MacOS operativnim sistemom, Oracle OpenJDK 1.14 i IntelliJ IDEA Community razvojno okruženje.

Potrebno predznanje

Podrazumeva se da polaznik poseduje znanje iz kurseva Core Java Programming i Advanced Java Programming.

Java Desktop Application Development

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 je otvoren!

Da saznate sve o upisu, kliknite ovde