proleće/leto 2008
DESCRIPTION
Programski jezici. proleće/leto 2008. Programski jezik Java. Razvoj jezika Proizvod firme “Sun Microsystems” 1990-1991 : jezik O ak (James Gosling, Bill Joy, …) 1994 : Promenjen naziv u Java 1995 : Java se lansira na SunWorld-u 1996: IBM i Microsoft kupuju licencu. - PowerPoint PPT PresentationTRANSCRIPT
proleće/leto 2008
Dejan Živković Programski jezici 2
Programski jezikProgramski jezik Java Java
Razvoj jezika○ Proizvod firme “Sun Microsystems”○ 1990-1991: jezik Oak (James Gosling,
Bill Joy, …)○ 1994: Promenjen naziv u Java○ 1995: Java se lansira na SunWorld-u○ 1996: IBM i Microsoft kupuju licencu
Dejan Živković Programski jezici 3
Programski jezikProgramski jezik Java Java
○ 1996: JDK 1.0 (8 paketa sa 212 klasa) ○ 1997: JDK 1.1 (23 paketa , 504 klase)○ 1999: JDK 1.2 (59 paketa, 1520 klasa)
(Java 2)○ 2000: JDK 1.3 (76 paketa 1842 klase)○ 2002. JDK 1.4 (135 paketa, 2991 klasa)○ 2004. JDK 1.5 (Java 5)○ 2006. JDK 1.6 (Java 6)
Dejan Živković Programski jezici 4
Programski jezikProgramski jezik Java Java
Karakteristike jezika○ Objektno orijentisan programski jezik
opšte namene○ Nezavisan od konkretnog računarskog
sistema na kome se koristi (jednom napisan i preveden Java program se može izvršiti na bilo kojoj platformi koja podržava Javu)
Dejan Živković Programski jezici 5
Programski jezikProgramski jezik Java Java
○ Automatski “skupljač otpadaka” (garbage collector)
○ Podrška za Web i računarske mreže○ Podrška za RPC (remote procedure call)○ Jezik pogodan za sve “pametne” uređaje
(računari, mobilni tel., TV, ...)
Dejan Živković Programski jezici 6
Programski jezikProgramski jezik Java Java
Vrste jezika○ Java SE (Standard Edition)○ Java ME (Micro Edition)○ Java EE (Enterprise Edition)
Dejan Živković Programski jezici 7
Programski jezikProgramski jezik Java Java
Java programi se izvršavaju na Java 2 platformi:○ Java Virtual Machine(JVM) –
softverska implementacija hipotetičkog računara
○ Java Application Programming Interface (Java API) – skup softverskih komponenti koje olakšavaju proces programiranja
Dejan Živković Programski jezici 8
Programski jezikProgramski jezik Java Java
JRE – Java Runtime Enviroment○ za izvršavanje programa na određenoj
platformi (PC, Macintosh, Sun ...)JDK – Java Development Kit
○ za razvojhttp://java.sun.com
Dejan Živković Programski jezici 9
Programski jezikProgramski jezik Java Java
Kompajlersko-interpretatorski jezik
Java izvorni kod
(*.java)
Java bajt-kod
(*.class)Java kompajlerjavac imefajla.java
JVM
Interpretator
java imeklase
Operativni sistem
Dejan Živković Programski jezici 10
Programski jezikProgramski jezik Java Java
Tradicionalni način izvršavanja
Izvorni kodPowerPC
Java kompajler
Izvršni PowerPC kod
SPARC Java
kompajler
Izvršni SPARC kod
Intel Java kompajler
Izvršni Intel kod
Dejan Živković Programski jezici 11
Programski jezikProgramski jezik Java Java
Način izvršavanja Java programaJava
interpretator Pentium
Java izvorni kod
Java kompajler
Java bajt-kod
Java bajt-kod je isti za sve platforme
Java interpretator
PowerPC
Java interpretator
SPARC
Dejan Živković Programski jezici 12
Programski jezikProgramski jezik Java Java
Vrste Java programa○ Aplikacija
• samostalni uobičajeni program
○ Aplet• izvršava se u brauzeru klijenta u okviru Web strane• automatska distribucija i instalacija• ograničene mogućnosti zbog bezbednosti
○ Servlet, JSP (Java Server Pages)• dinamičko pravljenje Web strana (na Web serveru)
Dejan Živković Programski jezici 13
Programski jezikProgramski jezik Java Java
Razvoj Java programa○ Tekstualni editor
• Notepad, TextPad, ...
○ Integrisano razvojno okruženje• NetBeans, Eclipse, Java Studio, JCreator,
JBuilder, ...
Dejan Živković Programski jezici 14
Programski jezikProgramski jezik Java Java
Prvi Java program
// Zdravo.javapublic class Zdravo { public static void main(String[] args) { System.out.println("Zdravo svima!");}
}
Dejan Živković Programski jezici 15
Programski jezikProgramski jezik Java Java
Izvršavanje (iz DOS prozora):
javac Zdravo.javajava Zdravo
Primeri aplikacija i apleta
Dejan Živković Programski jezici 16
Objektno orijentisano Objektno orijentisano programiranjeprogramiranje
Programska paradigma zasnovana na objektima koji međusobno komuniciraju
Programska logika se obezbeđuje manipulisanjem objektima
Dejan Živković Programski jezici 17
Šta je objekat?Šta je objekat?
Stvarni objekti: auto, kuća, bicikl, pas, bankovni račun, student, ...
Objekat je određen svojim atributima i ponašanjem ○ Atribut je svojstvo (obeležje) objekta,
nešto što objekat “ima”• Auto ima boju, broj šasije, broj motora, ...
○ Ponašanje je nešto što objekat “radi”• Auto ubrzava, koči, skreće, ...
Dejan Živković Programski jezici 18
Šta je objekat?Šta je objekat?
Softverski objekti oponašaju stvarne objekte po tome što i oni imaju atribute i ponašanje
Atributi (svojstva, obeležje, stanje) softverskog objekta se predstavljaju pridruženim promenljivim
Ponašanje softverskog objekta se predstavlja pridruženim metodima (funkcijama, procedurama)
Dejan Živković Programski jezici 19
Šta je objekat?Šta je objekat?
Promenljive(atributi)
Metodi(ponašanje)
Dejan Živković Programski jezici 20
Šta je objekat?Šta je objekat?
bela boja
upali
ugasi
promenibrzinu
koči
4 vrata
brzina 90 km/s
Auto