A NYELV NEVE. Kezdetben: Oak. James Gosling. Java: Sun Mycrosystems védjegyev



Hasonló dokumentumok
Java I. A Java programozási nyelv

I. Bevezetés. 1. ábra A Java "logója"

Programozás I. 1. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Java I. A Java programozási nyelv

Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

Virtualizációs Technológiák Bevezetés Kovács Ákos Forrás, BME-VIK Virtualizációs technológiák

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs

Bevezetés, platformok. Léczfalvy Ádám

Java. JIT (Just in Time) fordítók alkalmazása, optimalizálás AOT (Ahead of Time) fordítók alkalmazásának lehetősége

Fordítóprogramok szerkezete avagy Mi történik Pascalban mikor F9-et nyomunk?

4. Programozási nyelvek osztályozása. Amatőr és professzionális

P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához. Rendszerterv. Sipos Gergely

15. Programok fordítása és végrehajtása

Programozási nyelvek JAVA EA+GY 1. gyakolat

Fehér Krisztián. Navigációs szoftverek fejlesztése Androidra

A C++ öröklés. (Előfeltétel: 12. tétel ismerete)

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

Informatikus informatikus Térinformatikus Informatikus T 1/9

2. fejezet Hálózati szoftver

strings.xml res/values/strings.xml fájlban hozzuk létre a hiányzó string adatforrásainkat A jelenlegi helyett ez álljon: <resources> <string

NIKerettanterv MATEMATIKA 1. évfolyan Éves óraszám: 180 óra, heti 5 óra

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

Szoftver, szabadalom, Európa

Történeti áttekintés

Programozási nyelv Java

A Szerzői Jogi Szakértő Testület szakvéleményei

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

Európai Uniós Nyílt Forráskódú Licenc

Kaspersky Internet Security Felhasználói útmutató

Programozási technológia I.

AZ ALGORITMUSRÓL. (bevezetés a programozáshoz)

Utolsó módosítás: június 18.

Magyarországon a szerzői joggal a évi LXXVI. törvény foglalkozik.

Követelmény, projekt, funkcionalitás 41 CSK 1

DocBook útmutató. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar

Programozás III A JAVA TECHNOLÓGIA LÉNYEGE. Többlépcsős fordítás JAVA PLATFORM. Platformfüggetlenség

BALLA és TÁRSA Kereskedelmi és Szolgáltató Korlátolt Felelősségű Társaság

ÁLTALÁNOS SZERZŐDÉSI FELTÉTELEK

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is.

Széchenyi István Egyetem. Programozás III. Varjasi Norbert

Java felhasználói felület

Programozás elmélet tananyag

Keresztmetszeti megmunkálás többfejes gyalugépekkel

Szoftvertechnológia alapjai Java előadások

Bánsághi Anna 1 of 67

ECP. Site Administration System. Felhasználói kézikönyv. v (1. kiadás a és újabb verziójú ECP SAS rendszerekhez)

Flex: csak rugalmasan!

SAS Enterprise BI Server

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is.

RIA Rich Internet Application

Adatstruktúrák Algoritmusok Objektumok

Gyakorlatok. P (n) = P (n 1) + 2P (n 2) + P (n 3) ha n 4, (utolsó lépésként l, hl, u, hu-t léphetünk).

A Szekszárdi I. Béla Gimnázium Helyi Tanterve

Titrik Ádám. Témavezető: Dr. Lakatos István. Széchenyi István Egyetem

Fejlesztési tapasztalatok multifunkciós tananyagok előállításával kapcsolatban Nagy Sándor


prímfaktoriz mfaktorizáció szló BME Villamosmérn és s Informatikai Kar

Alap számológép alkalmazás

Operációsrendszerek. 2. elıadás. Standard ismeretek II.

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

Informatikai alkalmazások - levelező

Fejlesztői szemmel at K

Alkalmazott modul: Programozás

Novell Nterprise Branch Office: a távoli iroda felügyeletének leegyszerűsítése

Műholdvevő készülékekkel történt visszaélések büntetőjogi kérdései

2. Követelmény, projekt, funkcionalitás

GÁZTURBINA-OPERÁTOROK TOVÁBBKÉPZÉSÉRE SZOLGÁLÓ SZIMULÁTOR FEJLESZTÉSE

AMI KIMARADT AMI KIMARADT

C++ fejlesztés az ECLIPSE környezetben

A szerzõrõl... xiii Bevezetés... xv

Gyakori kérdések és. válaszok. az internetes vásárlás. témaköréből

A Személyes adatok tárolásának módja, az Adatkezelés biztonsága

JELENTKEZÉSI LAP. Név: Osztály: cím (továbbjutásról itt is értesítünk): Iskola: Felkészítő tanár:

Nemzedékek Tudása Tankönyvkiadó folyamatosan a köznevelés megújításának szolgálatában

TERC-ETALON Online Építőipari Költségvetés-készítő és Kiíró programrendszer Felhasználói kézikönyv

Tanúsítási jelentés. Hung-TJ

A fény útjába kerülő akadályok és rések mérete. Sokkal nagyobb. összemérhető. A fény hullámhoszánál. A fény hullámhoszával

Az IMI rendszer. 1. A szolgáltatási irányelv és az IMI 2. Mi az IMI? 3. IMI alkalmazási moduljai 4. Hazai struktúra 5. IMI pilot 6. Hogyan mőködik?

FELHASZNÁLÓI KÉZIKÖNYV

ALGORITMUSOK ÉS BONYOLULTSÁGELMÉLET Matematika MSc hallgatók számára. 3. Előadás

Matematikai alapok. Dr. Iványi Péter

1. Az informatikai eszközök használata

Informatika. Magyar-angol két tanítási nyelvű osztály tanterve. 9. évfolyam

Készítette: Citynform Informatikai Zrt.

Széchenyi István Szakképző Iskola

Vári Péter-Rábainé Szabó Annamária-Szepesi Ildikó-Szabó Vilmos-Takács Szabolcs KOMPETENCIAMÉRÉS 2004

A tananyag. Témakörök. Optimum. Tudja meghatározni a numerikus, és karakteres adtok tárolt alakját.

KINDERGARTEN. 46 InFoka. Dady Róbert. Csapattagok: Konzulens:

Magas szintű programozási nyelvek 2 Előadás jegyzet

Kaspersky Small Office Security 2 Felhasználói útmutató

(11) Lajstromszám: E (13) T2 EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA

.NET (Dot-NET) #1 (Bevezetés)

Szlávi Péter: Szakmai önéletrajz

művészeti értekeinek megismerése


Összefoglaló Jelentés a évi belső ellenőrzési tevékenységről. A. A belső ellenőrzés által végzett tevékenység bemutatása

AquaZ Natura Kft. Általános Szerződési Feltételek

Számítógépes képelemzés projektmunkák 2012

Elérhetőségek és Cégadatok

Átírás:

JAVA

A NYELV NEVE Kezdetben: Oak James Gosling Java: Sun Mycrosystems védjegyev

EGY KIS FÖLDRAJZF Indonézia egyik szigete Jakarta: az ország g fővárosaf Föld 13. legnagyobb szigete

Mit egyszerű csinálni? Alkalmazásokat írni Interneten más m s számítógépek felé tovább bbítani Grafikákat, kat, weboldalakat megjeleníteni Minden más m s programozói i feladat is megoldható, amire a klasszikus programozási nyelvek képesekk

Objektumorientált nyelv Objektumok és s ezek mintáinak inak tekinthető osztályok összessége Osztályok: mezőkb kből l (változ ltozókból), metódusukb dusukból l (függv ggvényekből) épülnek fel

Mezőkben: eltárolhatjuk az adatokat Metódusokkal: megadhatjuk az adatokon végezhetv gezhető műveletek kódját

A programkész szítés s folyamata Specifikáci ció Tervezés Kódolás Tesztelés Dokumentálás

Specifikáci ció A feladat pontos meghatároz rozása Tartalmazza: a feladat szöveges leírását matematikai A megoldással szemben támasztott t követelményeket, környezeti k igényeket

Tervezés Elkész szülhet a megoldás s algoritmusa Az algoritmus által használt adatok leírása A jelentősebb problémákat részfeladatokra kell szétbontani Algoritmus: anyanyelvünk nkön n megfogalmazott parancssorozat

Kódolás Programozási nyelven leírt program Forrásk skód: utasítások sok sorozata Forrásállom llomány: programozási nyelven leírt verzió

Számítógép Processzor Rendkívül szűk elemi utasításkészletet ért meg, a gépi kódot (tárgykód, natív kód), ami egyesek és nullák sorozataként ábrázolható.

Értelmező Forrásk skód Értelmező Interpreter Gépi kódk

Értelmező Értelmező típusú interpretált nyelvek (Basic) 1. A programozó megírja a forrásk skódot 2. A felhasználó az értelmező segíts tségével végrehajtja a forrásk skódot 3. a) Az értelmező utasításonk sonként nt értelmezi és egyből l végrehajtja v (Basic) b) Az értelmező valamilyen egységenk genként nt értelmezi, lefordítja és s futtatja

Interpretált nyelv Hátránya: A gépi g kód k d előáll llítása csak a végrehajtv grehajtás s alatt törtt rténik meg lassabban futnak le az ilyen programok Forrásnyelven kerülnek terjesztésre sre a program jogosulatlan felhasználására minden lehetőség g adott Előnye: Portábilisek: könnyen k átvihetők k egy számítógépr pről egy más m s típust pusú rendszerre

Fordító Forrásk skód Fordító Compiler Gépi kódk

Fordító Fordító típusú kompilált lt nyelvek (Pascal, C, C++) 1. A programozó megírja a forrásk skódot 2. A programozó fordító programmal lefordítja gépi kódrak 3. A felhasználó később a gépi g kódot k futtatja a számítógépen

JAVA Forrásk skód Fordító Compiler Bájtkód Értelmező Interpreter Gépi kódk.java javac java Olyan, mint egy virtuális processzor gépi kódja..class

Bájtkód Előnyei nyei: Előford fordított bájtkb jtkód d gyorsabban értelmezhető Megvédi az algoritmusokat a lopást stól Platformfüggetlen: nem számít t milyen számítógépen állítjuk elő

Java értelmező JVM: a bájtkb jtkódot utasításonk sonként nt értelmezi és futtatja (virtuális gép, g szoftver) JIT: (Just In Time) a lefordított utasítást st a program futása alatt megjegyzi és s csak a legközelebbi betölt ltéskor fordítja újra (technológia, amit a JVM tud)

Programszerkesztő program Linker A lefordított tárgykt rgykód önállóan nem képes k futni, még összeszerkesztésre sre vár. v Az összeszerkesztést st a linker végzi. v Csak a linker által összeállított program futtatható.

Futtatás A programot be kell tölteni t a memóri riába és s végre v kell hajtatni a processzorral A futás s közben k előfordul forduló hibák k legtöbbsz bbször r a program leáll llásához vezetnek, ezek a futás s alatti hibák k (runtime error).

Compile time (Fordítási idő), Runtime (Futási idő) Bizonyos hibák k fordítási idejű hibák Elírás s a forrásk skódban Nem megengedett függvf ggvényhívás Paraméterez terezés Bizonyos hibák k futási idejű hibák Pl.: Pl.: 0-val való osztás A felhasználó inputját t nem sikerült értelmezni Nem létezl tező file Csupa olyan dolog, amit nem lehet tudni fordítási időben

Java-ban Tisztázni zni kell ezeket a fogalmakat, mivel kétszer k törtt rténik feldolgozás: elősz ször r fordítunk, majd másodszor m a kapott bájtkb jtkódot interpretáljuk, ezzel párhuzamos p a futtatás. Mivel az interpreter inputja a bájtkb jtkód, amit a fordító állított elő,, a bájtkb jtkódban mint forrásk skódban lévől hibák ott voltak már m r az eredeti forrásk skódban is. Mivel a fordítás s nem sikerülhetett volna hibás forrásk skóddal, ezért a bájtkb jtkódról l feltételezhetj telezhetjük, hogy hibátlan Így interpretálás s közben k már m r csak futási idejű hibák fordulhatnak elő.

Integrated Development Environment Integrált Fejlesztői i Környezet K IDE a neve a számítógép-programoz programozást megkönny nnyítő,, részben r automatizáló programoknak. Alapvető szerepe van a gyors alkalmazásfejleszt sfejlesztésben. Az IDE-k k rendszerint tartalmaznak egy szövegszerkeszt vegszerkesztőt t a program forrásk skódjának szerkesztésére, re, egy fordítóprogramot vagy értelmezőt, t, fordításautomatiz sautomatizálási si eszközöket, ket, valamint nyomkövet vetési, grafikusfelület let-szerkesztési si és változatkezelési lehetőségeket sok egyéb b mellett. A komolyabbakhoz, példp ldául az Eclipse-hez kiegész szítők k tömege t érhető el, amelyek a rendszerfejlesztés egyéb b fázisaiban, f pl. dokumentálás, projektmenedzsment stb. nyújtanak nagy segíts tséget.

Java Development Kit Java Fejlesztők k Csomagja JDK: : a Sun Microsystems egyik Java fejlesztőknek szánt terméke. A Java nyelv elterjedése óta messze ez az egyik legnépszer pszerűbb SDK (fejlesztőeszk eszköz). z). 2006 november 17-én a Sun bejelentette, hogy megnyitja a JDK forrásk skódját, és GNU General Public License (GPL) alatt adja ki a szoftvert. Ez nagyrészt csak 2007 május 8-án8 történt meg az OpenJDK kiadásával.

A JDK tartalma A JDK elsősorban sorban programozási eszközök k széles skáláját tartalmazza: javac A fordítóprogram program,, ami a forrásb sból l létrehozza l a bájtkódot. java A Java programok indításához szüks kséges interpreter,, mely képes k értelmezni a javac fordító által generált class fájlokat. f jar Archiver, ami a kiválasztott class fájlokbf jlokból l egyetlen JAR fájltf generál. javadoc Dokumentáci ció készítésére alkalmas eszköz, z, mely a forrásk skódban elhelyezett kommenteket értelmezi. jdb Debugger. javap Class fájl f disassembler. appletviewer Appletek böngésző nélküli li megtekintésére és s debuggolására használhat lható eszköz. z. javah extcheck apt jhat jstack jstat jstatd jinfo jmap idlj policytool

Java Runtime Environment Java Futtató Környezet Tartalmazza pl.: JVM (Java Virtual Machine) ) ( Java Virtuális Gép) G az értelmezőt Java osztályk lykönyvtárat bájtkb jtkódra fordított formában