proleće/leto 2008

20
proleće/leto 2008

Upload: beck-howe

Post on 30-Dec-2015

48 views

Category:

Documents


4 download

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 Presentation

TRANSCRIPT

Page 1: proleće/leto 2008

proleće/leto 2008

Page 2: 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

Page 3: proleće/leto 2008

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)

Page 4: proleće/leto 2008

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)

Page 5: proleće/leto 2008

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, ...)

Page 6: proleće/leto 2008

Dejan Živković Programski jezici 6

Programski jezikProgramski jezik Java Java

Vrste jezika○ Java SE (Standard Edition)○ Java ME (Micro Edition)○ Java EE (Enterprise Edition)

Page 7: proleće/leto 2008

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

Page 8: proleće/leto 2008

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

Page 9: proleće/leto 2008

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

Page 10: proleće/leto 2008

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

Page 11: proleće/leto 2008

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

Page 12: proleće/leto 2008

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)

Page 13: proleće/leto 2008

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, ...

Page 14: proleće/leto 2008

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!");}

}

Page 15: proleće/leto 2008

Dejan Živković Programski jezici 15

Programski jezikProgramski jezik Java Java

Izvršavanje (iz DOS prozora):

javac Zdravo.javajava Zdravo

Primeri aplikacija i apleta

Page 16: proleće/leto 2008

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

Page 17: proleće/leto 2008

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, ...

Page 18: proleće/leto 2008

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)

Page 19: proleće/leto 2008

Dejan Živković Programski jezici 19

Šta je objekat?Šta je objekat?

Promenljive(atributi)

Metodi(ponašanje)

Page 20: proleće/leto 2008

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