Kurs Advanced Android UI Design and Programming

Kurs Advanced Android UI Design and Programming obrađuje napredne tehnike kreiranja i modularizacije korisničkog okruženja Android aplikacija. Tokom trajanja kursa, polaznici će se upoznati sa tehnikama koje će im omogućiti kreiranje visoko optimizovanih aplikacija koje će podjednako dobro funkcionisati na širokom spektru različitih uređaja pogonjenih Android operativnim sistemom. Poseban akcenat u kursu, stavljen je na kreiranje dobro strukturiranog korisničkog okruženja i korišćenje fragmenata.

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

Opis i ciljevi kursa Advanced Android UI Design and Programming

Kurs Advanced Android UI Design and Programming obrađuje napredne tehnike kreiranja i modularizacije korisničkog okruženja Android aplikacija. Polaznici će se upoznati sa tehnikama koje će im omogućiti kreiranje visoko optimizovanih aplikacija koje će podjednako dobro funkcionisati na širokom spektru različitih uređaja pogonjenih Android operativnim sistemom. Poseban akcenat u kursu stavljen je na kreiranje dobro strukturiranog korisničkog okruženja i korišćenje fragmenata.

Kurs obrađuje i tehnike za kreiranje napredne navigacije, čime se postiže proizvodnja dobro organizovanih aplikacija, koje će korisnici sa lakoćom koristiti. Na kraju, kurs Advanced Android UI Design and Programming pokriva i različite tehnike za omogućavanje skrola, postizanje dijaloga sa korisnikom, ali i sve popularniji element za kreiranje flat UI struktura – ConstraintLayout.

Cilj kursa Advanced Android UI Design and Programming je osposobljavanje polaznika za samostalno kreiranje naprednijih Android aplikacija. Korisnici će biti upoznati sa načinom na koji je moguće kreirati određene reusable komponente i koristiti ih na mestima na kojima su im potrebne. Osim toga, polaznici će znati da naprave razliku između fragmenta i aktivnosti i da ih koriste na adekvatnim mestima. Polaznici će biti upoznati sa različitim tipovima navigacije i njihovom primenom. 

Pošto uglavnom nije moguće prikazati baš kompletan sadržaj na ekranu uređaja, polaznici će naučiti na koji način mogu da implementiraju kako vertikalni tako i horizontalni skrol, kao sastavni deo gotovo svake Android aplikacije. Još jedan od naprednih elemenata koje će polaznici naučiti su dijalozi, jer su mnogo intuitivniji u odnosu na Toast elemente, pa će biti u stanju da ih upotrebe na odgovarajućim mestima i da vrate informaciju u samu aktivnost aplikacije. Na kraju, polaznici će biti upoznati sa još jednim layout elementom – Constraint layoutom, koji je poslednji uveden i postaje sve popularniji.

Kurs Advanced Android UI Design and Programming će vam odgovoriti na pitanja:

1. Šta su fragmenti?

U Android programiranju fragmenti zauzimaju posebno važno mesto. Fragment predstavlja deo korisničkog okruženja aktivnosti. Ukoliko se UI Android aplikacije posmatra modularno, kao skup više logičkih celina, jedan modul takvog UI-a se može doživeti kao fragment. Tako se layout jedne aktivnosti Android aplikacije može sastojati iz više zasebnih celina definisanih fragmentima. Fragmenti se primarno koriste u dva različita scenarija.

Prvi scenario korišćenja fragmenata podrazumeva situacije u kojima je potrebno kreirati reusable komponentu. To je zapravo složena UI komponenta koja se može koristiti na više mesta unutar jedne ili više Android aplikacija. Kurs Advanced Android UI Design and Programming opisuje tehnike za kreiranje takvih komponenata korišćenjem fragmenata.

Fragmenti se takođe veoma često koriste i kada je potrebno obezbediti različiti layout (raspored elemenata) na različitim uređajima. U kursu Advanced Android UI Design and Programming nastavlja se sa razvojem potpuno funkcionalne, profesionalne i moderne aplikacije Fit Body, unutar koje će fragmenti biti upotrebljeni za postizanje modularizacije. Tako polaznici na praktičnom primeru mogu videti real life upotrebu fragmenata.

2. Kako se postiže optimizacija Android aplikacije za različite displeje?

Android operativni sistem pogoni vrlo širok spektar uređaja različitih karakteristika. Zbog toga je poseban izazov kreiranje UI-a koji će podjednako dobro izgledati na svim uređajima. Za postizanje optimizacije UI-a za različite uređaje, Android poznaje moćan sistem koji omogućava korišćenje različitih resursnih fajlova u različitim situacijama.

Optimizacija resursa se može postići na osnovu različitih osobina displeja. Najzastupljeniji pristupi optimizaciji podrazumevaju optimizaciju aplikacije na osnovu veličine displeja, gustine prikaza i orijentacije.

Veličina displeja odnosi se na fizičku veličinu displeja, koja se izražava dužinom njegove dijagonale. Najčešća praksa jeste izražavanje dužine dijagonale u inčima (inch, skraćeno in ili “).

Gustina prikaza je pojam koji se odnosi na količinu piksela od kojih je sačinjen displej. Jedinica koja se koristi za izražavanje gustine prikaza je dpi (dots per inch). Jedinična vrednost u ovom slučaju predstavlja broj piksela na jednom dužnom inču.

Orijentacija uređaja se odnosi na položaj uređaja prilikom korišćenja. Ukoliko korisnik drži uređaj uspravno, kaže se da je takav uređaj u portrait modu. Ukoliko korisnik drži uređaj vodoravno, on je u landscapce modu. Kurs Advanced Android UI Design and Programming obrađuje različite tehnike za postizanje optimizacije UI-a na primeru realne aplikacije Fit Body.

3. Kako se postiže navigacija korišćenjem swipea?

Kvalitetne Android aplikacije poseduju veoma jasan sistem koji korisniku omogućava laku navigaciju kroz prozore aplikacije i jednostavno razumevanje strukture takve aplikacije.

Jedna od najzastupljenijih tehnika za postizanje navigacije u modernim Android aplikacijama jeste navigacija koja podrazumeva korišćenje swipe pokreta za prelazak sa jednog prozora na drugi. Ovakav tip navigacije realizovan je u brojnim modernim aplikacijama (Gmail, Viber, Twitter...); kurs Advanced Android UI Design and Programming opisuje tehnike za kreiranje ovakve navigacije.

Za postizanje horizontalne navigacije korišćenjem swipe pokreta, u kursu se obrađuje element ViewPager. ViewPager je specijalni layout menadžer koji omogućava da se na jednostavan način obavlja navigacija između sukcesivnih stranica. Takva navigacija obavlja se korišćenjem swipe pokreta, a element ViewPager omogućava prelazak na susednu stranicu s leve ili desne strane.

Kurs Advanced Android UI Design and Programming

4. Kako se postiže navigacija korišćenjem tabova?

Navigacija korišćenjem tabova je takođe jedan od najkorišćenijih vidova navigacije u Android aplikacijama. Navigacija korišćenjem tabova se u Android aplikaciji može postići na nekoliko načina. Elementi PagerTitleStrip i PagerTabStrip su elementi koji se koriste unutar elementa ViewPager i omogućavaju indikaciju stranica unutar ovog elementa. Pored puke indikacije stranica, element PagerTabStrip omogućava i navigaciju korišćenjem tabova. Tako je element PagerTabStrip interaktivni indikator trenutne, prethodne i naredne stranice elementa ViewPager, koji korisniku omogućava da stranicu odabere klikom na naziv stranice unutar ovakvog elementa.

Najnapredniji pristup kreiranju navigacije korišćenjem tabova omogućava layout element TabLayout. To je element koji je u potpunosti nezavisan od elementa ViewPager, ali se može konfigurisati i tako da funkcioniše u simbiozi sa ovim elementom.

5. Šta je Navigation Drawer?

Navigation Drawer je panel koji se koristi za prikaz osnovne navigacione strukture aplikacije. Uglavnom se nalazi na levoj strani UI-a i veći deo vremena je nevidljiv, odnosno skriven izvan ivica displeja. Korisnik ima mogućnost da ga otvori korišćenjem swipe pokreta ili klikom na takozvanu App ikonicu.

Navigation Drawer predstavlja jedan od najkorišćenijih načina za kreiranje efikasne navigacije unutar Android aplikacije. Baš zato što veliki broj modernih Android aplikacija poseduje ovakav vid navigacije (razne Google aplikacije, Viber, eBay, Twitter...), korisnici su na njega navikli i očekuju da on postoji unutar bilo koje kvalitetne aplikacije. Stoga, ukoliko želite da kreirate kvalitetne, moderne Android aplikacije, realizacija navigacije korišćenjem Navigation Drawera mora se ozbiljno uzeti u razmatranje. U kursu Advanced Android UI Design and Programming prikazane su napredne tehnike za rukovanje Navigation Drawer elementom.

6. Kako se realizuje skrol u Android aplikacijama?

Prilikom razvoja Android aplikacija, česti su slučajevi da sadržaj jednog prozora UI-a ne može u potpunosti da bude smešten unutar dostupnog prostora displeja. Do ovakvog scenarija često dolazi kada se aplikacija izvršava na uređajima sa manjim displejima. U takvim situacijama potrebno je osigurati optimalan prikaz sadržaja kako bi korisnik bio u mogućnosti da nesmetano koristi aplikaciju.

Ukoliko je unutar jedne aktivnosti Android aplikacije potrebno smestiti veću količinu sadržaja, dobar pristup je omogućiti skrolovanje takvog sadržaja kako bi korisnik bio u mogućnosti da vidi kompletan sadržaj. Kada se govori o skrolovanju, mora se napomenuti da postoje dve vrste skrola: horizontalni i vertikalni.

Kurs Advanced Android UI Design and Programming prikazuje različite tehnike za omogućavanje horizontalnog i vertikalnog skrola.

7. Kako se obavlja konverzacija s korisnikom?

Tokom razvoja aplikacija za bilo koju platformu, veoma je važno obezbediti dobar korisnički doživljaj. Jedan od aspekata dobrog korisničkog doživljaja jeste i kreiranje interaktivne aplikacije koja je u mogućnosti da razgovara s korisnikom. Takav razgovor sa korisnikom podrazumeva postavljanje različitih pitanja na koja bi on mogao vrlo jednostavno da odgovori. Drugim rečima, dobre aplikacije implementiraju logiku za vođenje dijaloga sa korisnikom.

Dijalozi su zapravo mali prozori koji se pojavljuju na ekranu kada je korisnika potrebno o nečemu obavestiti ili od njega treba dobiti neku informaciju. Najčešće, prozori koji predstavljaju dijaloge ne zauzimaju kompletan dostupni prostor displeja uređaja, već se prikazuju preko aktivnog prozora, a zauzimaju taman toliko prostora koliko je potrebno za njihov sadržaj.

Kurs Advanced Android UI Design and Programming opisuje tehnike za kreiranje različitih tipova dijaloga. Tako će polaznici naučiti kako se korišćenjem dijaloga korisniku postavlja pitanje, omogućava određeni odabir ili kreira potpuno prilagođena logika.

Plan i program kursa:

Modul 1 – Modularizacija i optimizacija UI-a

  • Fragmenti
  • Korišćenje fragmenata za kreiranje reusable komponenata
  • Korišćenje fragmenata za kreiranje prilagodljivog UI-a
  • Rukovanje stanjem aktivnosti i fragmenta
  • Optimizacija UI-a za uređaje sa različitim osobinama displeja
  • Optimizacija UI-a aplikacije Fit Body

Modul 2 – Napredna navigacija

  • Navigacija korišćenjem horizontalnog swipea
  • Navigacija korišćenjem tabova
  • Navigation Drawer

Modul 3 – Elementi za omogućavanje skrola

  • Vertikalni skrol
  • Horizontalni skrol

Modul 4 – Konverzacija sa korisnikom

  • Dijalozi
  • Kreiranje različitih tipova dijaloga
  • Komunikacija između dijaloga i roditelja
  • Implementacija dijaloga u aplikaciji Fit Body

Modul 5 – Optimizacija složenih UI struktura

  • Složene i flat UI strukture
  • Osnove raspoređivanja elemenata korišćenjem ConstraintLayouta
  • Poravnavanje elemenata
  • Virtuelni pomoćni elementi
  • Lančano raspoređivanje elemenata
  • Primena ConstraintLayout elemenata u unapređivanju Calculator aplikacije

Potreban softver i tehnički uslovi:

  • Za uspešno praćenje ovog kursa neophodno je razvojno okruženje Android Studio, koje funkcioniše na Windows, macOS i Linux operativnim sistemima.

Potrebno predznanje:

  • Za uspešno praćenje kursa dovoljno je predznanje iz kurseva Core Java Programming, Advanced Java Programming i Introduction to Android Application Development.

Kompetencije

Modularizacija i optimizacija UI-a

  • Sposobnost kreiranja modularnog korisničkog okruženja
  • Sposobnost optimizacije korisničkog okruženja za uređaje različitih osobina

Napredna navigacija

  • Poznavanje elemenata koji pripadaju naprednoj navigaciji
  • Sposobnost razlikovanja i upotrebe elemenata ViewPager, TabLayout i DrawerLayout unutar Android aplikacije

Elementi za omogućavanje skrola

  • Poznavanje i sposobnost primene elemenata koji omogućavanju skrolovanje sadržaja, kako horizontalno tako i vertikalno

Konverzacija sa korisnikom

  • Kreiranje naprednih dijaloga korišćenjem klasa AlertDialog i DialogFragment

Optimizacija složenih UI struktura

  • Sposobnost kreiranja flat UI strukture korišćenjem ConstraintLayouta

Polaznici na kursu Advanced Android UI Design and Programming

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