UNIVERZITET U BEOGRADU                                                                
FAKULTET ORGANIZACIONIH NAUKA
INSTITUT ZA INFORMACIONE SISTEME
Jove Ilica 154, Beograd

 

INOVACIJA ZNANJA I STRUČNOG OBRAZOVANJA I USAVRŠAVANJA

“Sa prvom platom koju zaradite kao Java programer pokrićete troškove svih ponuđenih kurseva.”

JAVA KURSEVI (2007 godina)

Rukovodilac Dr Siniša Vlajić, doc. 

(kontakt telefon:063-493-133 kontakt e-mail: java@fon.bg.ac.yu)

KURSEVI KOJI TREBA DA SE ODRŽE:

1. Sifra (OK) – Programski jezik Java - osnove

 

 

Mesto održavanja kursa: Kabinet broj 9 (IBM Linux centar), Fakultet organizacionih nauka, Jove Ilića 154, Beograd.

Maksimalni broj polaznika: 8

Datumi i vreme održavanja kursa:

 

Ponedeljak

14.04.08 (18h-22h)

21.04.08 (18h-22h)

Utorak

15.04.08 (18h-22h)

22.04.08 (18h-22h)

Sreda

16.04.08 (18h-22h)

 

:Četvrtak

17.04.08 (18h-22h)

 

Petak

              18.04.08 (18h-22h)

 

 

 

VAŽNA NAPOMENA: Ukoliko želite da slušate bilo koji od kurseva a ne odgovara vam predloženi termin i vreme pošaljite nam predlog termina i mi ćemo pokušati da se prilagodimo vašem terminu. Takođe nam javite za koje ste kurseve zainteresovani i mi ćemo vam periodično javljati kada se ti kursevi održavaju. Predloge šaljite na e-mail: vlajic@fon.bg.ac.yu

 Postoji 5 nivoa kurseva :

  1. PROGRAMSKI JEZIK JAVA – OSNOVE
  2. PROGRAMSKI JEZIK JAVA – PRVI VIŠI
  3. PROGRAMSKI JEZIK JAVA – DRUGI VIŠI
  4. PROGRAMSKI JEZIK JAVA –  Enterprise Java Bean programiranje
  5. PROGRAMSKI JEZIK JAVA – RAZVOJ WEB KOMPONENTI SA JAVA TEHNOLOGIJOM

Broj časova i cena kurseva:

PROGRAMSKI JEZIK JAVA - OSNOVE 

(Broj časova: 28    Cena: 9000 po kandidatu)

Uplatu izvršiti na žiro račun: 840-1344666-69

Poziv na broj: 742121-605

 

  PROGRAMSKI JEZIK JAVA – PRVI VIŠI

(Broj časova: 28    Cena: 9000 po kandidatu)

Uplatu izvršiti na žiro račun: 840-1344666-69

Poziv na broj: 742121-605

 

PROGRAMSKI JEZIK JAVA – DRUGI VIŠI

(Broj časova: 28    Cena: 12000 po kandidatu)

Uplatu izvršiti na žiro račun: 840-1344666-69

Poziv na broj: 742121-605

PROGRAMSKI JEZIK JAVA –  Enterprise Java Bean programiranje

(Broj časova: 36    Cena: 18000 po kandidatu)

Uplatu izvršiti na žiro račun: 840-1344666-69

Poziv na broj: 742121-605

 PROGRAMSKI JEZIK JAVA – Razvoj Web komponenti sa Java tehnologijom   

(Broj časova: 40    Cena: 18000 po kandidatu)

Uplatu izvršiti na žiro račun: 840-1344666-69

Poziv na broj: 742121-605

 Za svakog polaznika je obezbedjen po jedan racunar na kome ce pratiti kurs.

 Ukoliko ste zainteresovani za neki od navedenih kurseva posaljite na e-mail: vlajic@fon.bg.ac.yu

sledeći tekst:

 

Zainteresovan/a sam za kusr pod sifrom: (Izaberite jednu od sifara: RWK)

Ime i prezime:

Firma:

Adresa:

Telefon:

E-mail:

Kontakt telefon: 063-493133 ili 011-3950-867.

 “Sa prvom platom koju zaradite kao Java programer pokrićete troškove svih 5 ponuđenih kurseva Jave.”

Puno sreće i uspeha u osvajanju Jave želi vam Dr Siniša Vlajić sa svojom ekipom saradnika: dipl. ing Dušan Savić, dipl. ing Stanojević Vojislav, dipl.ing Antović Ilija i dipl. ing. Milić Miloš.

 

Niže je navedena specifikacija svakog od navedenih kurseva.

1. PROGRAMSKI JEZIK JAVA - OSNOVNI KURS 

(Broj časova: 28    Cena: 9000 po kandidatu)

1. Definicija klase  i deklaracija objekta

1.1.   Opšti oblik definicije klase

1.2.   Konkretna definicija klase i njenih članica

1.3.   Deklaracija objekta

1.4.   Poziv članica objekta

2. Metode klase

2.1.   Sastav metode

2.2.   Parametrizirane metode

2.3.   Konstruktori

2.4.   Rezervisana reč this

2.5.   Sakrivanje atributa objekta preko parametara metoda

2.6.   Sakupljanje smeća

2.7.   Metoda finalize()

2.8.   Preklapanje metoda

2.9.   Preklapanje konstruktora

2.10 Prenos argumenata metoda

2.11 Vraćanje objekta preko metode

2.12 Ključna reč static

3. Nasleđivanje

3.1.   Natklasa i potklasa

3.2.   Način pristupa do članica nadređene klase

3.3.   Kompatibilnost objektnih tipova

3.4.   Rezervisana reč super

3.5.   Pozivanje konstruktora u hijerarhiji klasa

3.6.   Redefinisanje metoda (override)

3.7.   Kasno povezivanje metoda

3.8.     Rezervisana reč final kod definisanja klase

3.9     Klasa Objec

4. Apstraktne klase

     4.1.   Rezervisana reč final kod metoda klasa

5. Interfejsi

5.1.   Definisanje interfejsa

5.2.   Realizacija interfejsa

5.3.     Interfejsi i apstraktne klase

5.4    Odnos između klasa i interfejsa

6.Rad sa stringovima

6.1 Deklaracija i inicijalizacija promenljive tipa String

6.2 Dobijanje novog na osnovu postojećeg stringa

6.2.1 Nadovezivanje znakovnih nizova (concatenation)

6.2.2 Dobijanje podstringova

6.2.3 Promena nekog znaka sa drugim u stringu

6.2.4 Brisanje praznih mesta u stringu

6.2.5 Pretvaranje velikih u mala slova kod stringa i obrnuto

6.3 Određivanje dužine stringa

6.4 Promena vrednosti stringa

6.5 Pretraživanje znakova u stringu

        6.5.1 Pronalaženje znakova u stringu na osnovu indeksa

        6.5.2 Pronalaženje znakova u stringu na osnovu vrednosti

6.6 Kopiranje stringa u niz

6.7 Poređenje stringova

6.7.1 Ispitivanje jednakosti stringova

6.7.2 Ispitivanje jednakosti dva podniza dva različita stringa

6.7.3 Ispitivanje da li string započinje ili se završava sa vrednošću drugog stringa

6.7.4 Ispitivanje koji je od dva stringa veći

6.8 Konvertovanje stringova

6.9 Čitanje stringa preko standardnog ulaza

6.10 Formatiranje stringa kod prikazivanja realnog broja

6.11 Klasa StringBuffer

7. Paketi

7.1.  Preslikavanje između paketa, datoteka i klasa

7.2.   Veza paketa i sistema direktorijuma

7.3.   Definisanje paketa

7.4.   Način pristupa članovima klase iz paketa

7.5.   Uvoženje paketa

8. Obrada izuzetaka

8.1 Definicija izuzetaka (exception)

8.2 Vrste grešaka

8.3 Klasifikacija izuzetaka

8.4 Neuhvaćeni izuzeci

8.5 Korišćenje rezervisanih reči try i catch

8.6 Prikazivanje opisa izuzetaka

8.7 Ugnježdene naredbe TRY

8.8 Obrada (hvatanje) više izuzetaka preko CATCH

8.9 Oglašavanje izuzetaka koje će da pravi (baca) metoda preko throws

8.10 Kako se prave (bacaju) izuzeci preko throw

8.11 Ponovo bacanje izuzetka

8.12 Pravljenje sopstvenih klasa izuzetaka

8.13 Rezervisana reč finally

8.14 Javini ugrađeni izuzeci

9. Tokovi (streams) i datoteke (files)

                9.1 Čitanje i upisivanje bajtova

                                9.1.1 Unos podataka preko tastature u  binarni tok

                                9.1.2 Prikaz podataka na ekranu pomoću binarnog toka

                                9.1.3  Zadaci za vežbanje

                9.2 Čitanje i upisivanje znakova

                                9.2.1 Unos podataka preko tastature u znakovni tok

                                9.2.2 Prikaz podataka na ekranu pomoću znakovnog toka

                                9.2.3 Zadaci za vežbanje

                9.3 Čitanje i upisivanje podataka u datoteku

                                9.3.1 Upisivanje binarnih podataka u datoteku

                                9.3.2 Čitanje binarnih podataka iz datoteke

                                9.3.3 Upisivanje znakovnih podataka u datoteku

                                9.3.4 Čitanje znakovnih podataka iz datoteke

                                9.3.5 Serijalizacija objekata

                                9.3.6 Zadaci u radu sa datotekama

                                9.3.7 Zadaci za vežbanje

  

2.     PROGRAMSKI JEZIK JAVA – PRVI VIŠI

(Broj časova: 28    Cena: 9000 po kandidatu)

  1. Aplet

1.1 Pisanje Apleta - Framework

 1.2 Redosled pozivanja metoda prilikom pokretanja i završavanja rada apleta

 1.3 Alati za Pisanje Java Apleta

 1.4 Dodatne Informacije

 1.5 Zadaci za rad sa apletima

    1.5.1 Koraci kod pravljenja apleta

  1. Kolekcije
  2. AWT korisnički interfejs

3.1 Frame

3.2 Grafički objekti

3.3 Tekst i fontovi

3.4 Boja

3.5 Crtanje oblika pomoću linija

3.6 Crtanje pravugaonika

3.7 Ispunjavanje oblika

3.9 Slike

3.10 Zone

3.11 Transformacija kordinata

3.12 Transarentnost i kompozicija

3.13 Clipboard

3.14 Drag and drop

  1. SWING korisnički interfejs

4.1 MVC paterni projektovanja

4.2 Tektualna polja

4.3 Grafički elementi za izbor vrednosti

4.4 Scroll bars

4.5 Upravljanje raspoređivanjem grafičkih elemenata

4.6 Meniji

4.7 Dijalog boksovi

4.8 Stablo

                4.9 Tabele

                4.10 Tekst komponente

                4.11 Progress Meters

                4.12 Tool Bars and Tool Tips

                4.13 Organizovanje komponenti

  1. JDBC

5.1 JDBC-a arhitektura

5.2 SQL

5.3 Instaliranje JDBC

5.4     Osnovni JDBC koncepti

5.4.1            Database URL

5.4.2            Upostavljanje konekcije

5.4.3            Izvršenje Action komande

5.4.4            Postavljanje upita pomoću JDBC

5.4.5            Napredni SQL tipovi

5.5     Batch obrada kod JDBC

5.6     Izvršni upiti

5.7     Meta podaci

5.8     Result set

  

 3. PROGRAMSKI JEZIK JAVA – DRUGI VIŠI

 (Broj časova: 28    Cena: 12000 po kandidatu)

1. Niti

1.1.   Šta su niti?

1.1.1.           Startovanje i izvršavanje niti             

1.1.2.           Izvršenje više niti

1.2.   Osobine niti

                                1.2.1 Stanje niti

                                1.2.2 Izlazak iz blokiranog stanja

                                1.2.3 Uništenje niti

                1.3 Prekid niti

                1.4 Prioritetne niti

                1.5 Selfish niti

                1.6 Grupe niti

                1.7 Sihronizacija

                                1.7.1 Komunikacija niti bez sinhronizacije

                                1.7.2 Sinhronizovani pristup do deljenih resursa

                                1.7.3 Zaključavanje objekata

                                1.7.4 wait i notify metode

                                1.7.5 Mrtva petlja

                1.8 Zašto su stop i susprend metode zastarele

                1.9 Niti i swing

                1.10 Korišćenje cevi (papes) za komunikaciju između niti

  2.        Rad u mreži

                2.1 Povezivanje klijenta sa serverom

                2.2 Implementacija servera za rad sa više klijenta (soketi)

                2.3 Slanje elektronske pošte

                2.4 URL konekcija

                2.5 Prosleđivaje oblikovanih podataka (posting form data)

                                2.5.1 CGI skript i servleti

                                2.5.2 Slanje podataka do Web servera

                2.6 Prihvatanje informacija sa Web-a

                                2.6.1 Zaštita kod apleta

                                2.6.2 Proxy serveri

 3.        Rad sa udaljenim objektima

                3.1 Uloga klijenta i servera

                3.2 Poziv udaljene metode

                                3.2.1 Stub-ovi  i prosleđivanje parametara

                                3.2.2 Dinamičko punjenje klasa

                                3.2.3 Interfejsi i implementacija

                                3.2.4 Lociranje serverskih objekata

                                3.2.5 Klijentska strana

                                3.2.6 Priprema za razvoj

                                3.2.7 Razvoj programa

                3.3 Prosleđivanje parametara kod udaljenih metoda

                                3.3.1 Prosleđivanje neudaljenih objekata

                                3.3.2 Prosleđivanje udaljenih objekata

                                3.3.3 Korišćenje udaljenih objekata u skupovima

                                3.3.4 Kloniranje udaljenih objekata

                                3.3.5 Neodgovarajući udaljeni parametri

                3.4 Korišćenje RMI sa apletima

                3.5 Java Idl i Corba

                                3.5.1 Interface definition language

                                3.5.2 Primer Corbe

                                3.5.3 Implementacija Corba servera

 4.        Java zrna (JavaBeans)

                4.1 Šta su zrna

                4.2 Proces pisanja zrna

                4.3 BDK i BeanBox

                4.4 Izgradnja aplikacije pomoću zrna

                4.5 Uzori (paterni) kod definisanja svojstava i događaja jednog zrna

                4.6 Dodavanje korisničkih događaja do zrna

                4.7 FeatureDescriptor objekti

                4.8 Pisanje kastomiziranih klasa

                4.9 Kontekst zrna

 5. Zaštita

                5.1 Punjači klasa (Class Loaders)

                                5.1.1 Pisanje sopstvenog punjača klasa

                5.2 Bytecode verifikacija

                5.3 Upravljanje zaštitom i dozvolama

                                5.3.1 Zaštita kod Java 2 platforme

                                5.3.2 Security policy datoteke

                                5.3.3 Dozvole

                                5.3.4 Implementacija permissions klasa

                                5.3.5 Korisničko upravljanje zaštitom

                                5.3.6 java.security paket

                                5.3.7 Autentifikacija

                                5.3.8 Označavanje

 6. Internacionalizacija

                6.1 Lokalizacija

                6.2 Brojevi

                6.3 Datum i vreme

                6.4 Tekst

                6.5 Resursi

                6.6 Lokalizacija grafičkog interfejsa

                6.7 Lokalizacija apleta

 

  4. PROGRAMSKI JEZIK JAVA –  Enterprise Java Bean programiranje

 (Broj časova: 36    Cena: 18000 po kandidatu)

 

  1. Uvod u Enterprise Technology

1.1     Razlika između client-server i više slojna arhitekture

1.2     Prednosti više slojne arhitekture

1.3     Prednosti J2EE tehnologije

1.4     Ciljevi i oblast pokrivanja EJB i J2EE tehnologije

1.5     Dve glavne osobine EJB specifikacije

1.6     Prednosti EJB rešenja

1.7     Razlika između EJB i JavaBeans

      

  1. EJB Framework

2.1     Glavne komponente kod EJB servera kod  runtime-a

2.2     Servisi koje kontejner obezbeđuje za bean

2.3     Razlike između session i entity bean

2.4     Objekti koji su potrebni kod EJB jar datoteke

2.5     Definisanje deklarativnog programiranja

2.6     Programske paradigme tradicionalnog nasuprot deklarativnom razvojnom modelu koji je zasnovan na pravilima

2.7     Tipovi klijenata koji mogu da pristupe do EJB komponente

2.8     Komunikacija klijenta sa enterprise bean

 

  1. Pisanje Session bean-a

3.1     Metode SessionBean interfejsa

3.2     Opis swap mehanizma kod session bean-a

3.3     Razlika između stateful i stateless session bean-a

3.4     Objašnjenje kako se upravlja životnim ciklusom enterprise bean-a

 

  1. Definisanje interfejsa

4.1     Metode koje se zahtevaju u home interface-u i njihovo objašnjenje

4.2     Metode koje se zahtevaju u remote interface-u i njihovo objašnjenje

4.3     Superklase za home i remote interfejs

4.4     Objašnjenje izuzetaka koji ukazuju na sistemske greške

4.5     Objašnjenje izuzetaka koji ukazuju na aplikacione greške

 

  1. Raspoređivanje session bean-a

5.1     Pisanje deployment deskriptora (DD) za opis strukturnih informacija session bean-a

5.2     Dodavanje informacija o okruženju do DD

5.3     Dodavanje bean i resource factory-a koji ukazuju na DD

5.4     Promena DD-a u cilju obezbeđenja informacija o referencama koje ukazuju na external bean i resource factories

5.5     Šta može korisnik da promeni kod DD

5.6     Objašnjenje kako JNDI se koristi da pristupi okruženju bean-a

 

  1. Pisanje EJB klijenta

6.1     Korišćenje JNDI da locira home object

6.2     Kreiranje session bean pojavljivanja korišćenjem home object-a

6.3     Poziv bean poslovnih metoda

6.4     Prosleđivanje i vraćanje vrednosti

6.5     Obrada bean izuzetaka kod klijenta

 

  1. The Online Shopping cart (potrošačka korpa)

7.1     Primer

7.2     Opis helper klasa za više slojne aplikacije

     

  1. Entity beans

8.1     Objašnjenje dve perzistentne tehnike upravljanja

8.2     Dopunske metode kod EntityBean interfejsa i njihova uloga

8.3     Opis čitanja i pamćenja bean-a

8.4     Objašnjenje zahteva kojim se definiše primarni ključ

 

  1. Bean-managed persistence – BMP (Upravljanje perzistentnošću pomoću bean-a)

9.1     Korektno pisanje ejbCreate metode za unos reda u tabelu baze

9.2     Korektno pisanje ejbLoad i ejbStore metoda za sinhronizaciju bean-a sa sa njegovim odgvarajućim redom iz tabele

 

  1. Definisanje Finder metoda

10.1   Definisanje finder metoda u bean-u.

10.2   Deklarisanje finder metoda u home interface

10.3   Definisanje finder metoda koje vraćaju jedan red  i koje vraćaju više redova tabele

10.4   Objašnjenje zašto finder metode u bean-u i home interface-u vraćaju različite tipove

 

  1. Container-managed persistence - CMP (Upravljanje perzistentnošću pomoću kontejnera)

11.1  Objašnjenje kako kontejneri pristupaju internim podacima bean-a

11.2   Implementiranje ejbCreate metoda koje dopuštaju kontejeru da omogući perzistentnost

11.3   Redefinisanje preostalih metoda kako bi kontejer korektno upravaljao perzistentnošću

 

  1. Transakcije kod EJB

12.1   Opis učesnika u transakciji

12.2    Nezavisni nivoi transakcije

12.3  Objašnjenje kako se šalju transakcije između dva bean-a u distribuiranom okruženju

 

  1. Container-managed transactions – CMT ( Upravljanje transakcijama pomoću kontejnera)

13.1   Transakcioni atributi

13.2   Tag-value par koji se koristu kod DD-a da se specificira CMT

13.3    Metode session-entity bean-a koji zahtevaju da transakcioni atributi budu specificirani u DD.

13.4   Objašnjenje kako bean rool-back-uje transakciju

  

  1. Bean-managed transactions – BMT (Upravljanje transakcijama pomoću bean-ova)

14.1   U DD-u se navodi da će bean-om upravljati svojim transakcionim stanjima

14.2    Korišćenje odgovarajućeg API-ja kod bean-a za kreiranje i završetak transakcije

14.3    BMT sa stateful-stateless session bean-ovima

    

  1. Sinhronizacija session bean-ova

15.1   Objašnjenje SessionSynchronisation interfejsa

15.2    Opis kako metode navedenog interfejsa obezbeđuju kontrolu transakcije kod bean-a

15.3   Transakcione kontrole koje se mogu koristiti kod bean-a koji implementira navedeni interfejs

15.4   Objašnjenje zašto beans-i koji implementiraju navedeni interfejs ne mogu da koriste BMT

 

  1. JB zaštita

16.1   Definisanje korisnika, principala i njihovih uloga

16.2   Informacije o zaštiti koje se postavljaju u DD

16.3   Kako kontejner obezbeđuje implementaciju zaštite

    

  1. Entity beans i objektno-relaciono preslikavanje

17.1   Prednosti i nedostaci implementacija kod pretraživanja i prikaza redova iz baze

17.2   Primer poslovne metode koja koristi objektno-relaciono preslikavanje

17.3   Razlozi zbog čega session bean-ovi imaju prednost nad entity bean-ovima kod složenih aplikacionih objekata

17.4   Razlozi zbog čega entity bean-ovi imaju prednost nad session bean-ovima kod složenih aplikacionih objekata

 

  1. Napredni koncepti

18.1   Nedostaci direktnog pristupa klijenta do entiteta

18.2   Osnovni principi projektovanja vezani za session i entity bean-ove

 

5. PROGRAMSKI JEZIK JAVA - Razvoj Web komponenti sa Java tehnologijom

 

 (Broj časova: 40    Cena: 18000 po kandidatu)

  1.  J2EE TEHNOLOGIJA

1.1.   Odnos između J2EE specifikacije, komponente, aplikacije i vendora.

1.2.   Distribuirane multi-nivojske aplikacije

1.3.   Realizacija tronivojske arhitekture preko J2EE klijenta, J2EE servera i sistema za upravljanje bazom podataka

                1.3.1 J2EE klijenti

                                1.3.2 Komunikacija J2EE klijenta i J2EE servera

                                1.3.3 J2EE server

                                1.3.4 J2EE aplikacija

                                                1.3.4.1 Web aplikacija

                                                1.3.4.2 EJB aplikacija

                                1.3.5 J2EE Komponente

                                1.3.5.1 Web komponente       

                                1.3.5.2 Poslovne komponente

              1.3.6  Sistem za upravljanje bazom podataka

1.4 Koraci u razvoju Web aplikacije

                1.5 J2EE Web modul

1.6 J2EE Kontejneri

1.7 Web servisi

                1.8 Pakovanje aplikacija

                                1.8.1 Opisivač rasporeda (deployment descriptor)

                                1.8.2 J2EE modul

                1.9 Uloge u razvoju J2EE aplikacije

 

2.       WEB KOMPONENTE

          2.1 Java Servleti

                2.1.1 Koraci u razvoju servleta

                                2.1.2 Metode slanja zahteva Web serveru

                2.1.3 Obrada izuzetaka kod servleta

                2.1.4 Kreiranje biblioteke Javinih klasa i njeno povezivanje sa Web

                                        aplikacijom

              2.1.5 Sesije

              2.1.6 Servlet kontekst

              2.1.7 Povezivanje servleta sa bazom podataka

              2.1.8 Pozivanje servleta preko apleta

         2.2. Java server strane (JavaServer Pages - JSP)

                2.2.1 Arhitektura JSP-a

                2.2.2 Korišćenje Java Beans komponenti sa JSP-om

                2.2.3 Miksovanje servleta i JSP-a

 2.2.4 Poziv JSP-a preko apleta

2.2.5 Rad sa bazom podataka

 

 

Copyright (C) 2005 Fakultet Organizacionih Nauka, All Rights Reserved
Jove Ilića 154, Beograd, SCG Tel. +381 11 3950 867 Fax +381 11 461 221

Search Engine Optimization and Free Submission
counter customizable free hit