Seminár Java

Transkript

Seminár Java
Seminář Java
Úvod
Radek Kočí
Fakulta informačních technologií VUT
Únor 2010
Radek Kočí
Seminář Java – Úvod
1/ 23
Téma přednášky
Organizace semináře
Java – úvod, distribuce
Radek Kočí
Seminář Java – Úvod
2/ 23
Informace, studijní materiály
Stránky předmětu
http://www.fit.vutbr.cz/study/courses/IJA/
zadání úkolů a projektu, informace
konzultace
studijní materiály
Diskuzní fóra (dostupná v IS)
diskuze problémů při řešení úkolů a projektu
Hodnocení předmětu
zápočet
odevzdané funkční úkoly
odevzdaný projekt
alespoň 50% bodů z projektu
Radek Kočí
Seminář Java – Úvod
3/ 23
Přehled jazyků
1960
Lisp
ALGOL
Simula-67
1970
C
1980
Smalltalk
CLOS
C++
Objective-C
Object Pascal
VisualC++
Ada95
1995
Java
1998
Java2
2000
Ada
Eiffel
Self
1990
Pascal
Delphi
C#
Radek Kočí
Seminář Java – Úvod
4/ 23
Programovací jazyk Java
Základní charakteristika
objektově orientovaný
statická typová kontrola
Java Virtual Machine – JVM
program v Javě je meziplatformně přenositelný na úrovni
zdrojového i přeloženého kódu
automatické odklizení nepoužitelných objektů (automatic
garbage collection)
Radek Kočí
Seminář Java – Úvod
5/ 23
Programovací jazyk Java
Základní charakteristika
dostupné velké množství knihoven pro různorodé aplikační
oblasti, např. na SourceForge, . . .
k dispozici je řada kvalitních vývojových prostředí (i
zdarma), např. NetBeans, JBuilder, Visual Age for Java,
Eclipse, IDEA
Srovnání (názory)
Java vs. C++ (http://c2.com/cgi/wiki?JavaVsCpp)
Java vs. Smalltalk
(http://c2.com/cgi/wiki?JavaVsSmalltalk)
Radek Kočí
Seminář Java – Úvod
6/ 23
Programovací jazyk Java
Využití Javy
vícevláknové aplikace (multithreaded applications)
škálovatelné výkonné aplikace běžící na serverech (Java
Enterprise Edition)
aplikace na přenosných a vestavěných zařízeních (Java
Micro Edition)
webové aplikace (servlety, JSP) – alternativa
proprietárních ASP, SSI, CGI
zpracování semistrukturovaných dat (XML)
přenositelné aplikace s GUI
aplikace distribuované po síti (Applets nebo Java Web
Start)
Radek Kočí
Seminář Java – Úvod
7/ 23
Programovací jazyk Java
Typy aplikací
Konzolové aplikace
jednoduchá textová konzole
GUI aplikace
Applety
běží v HTML prohlížečích
mají silná bezpečnostní omezení
Radek Kočí
Seminář Java – Úvod
8/ 23
Java – platforma
Java platformu tvoří:
Java Virtual Machine (JVM)
překladač a další vývojové nástroje
Java Core API (základní knihovna tříd)
Java je tedy dána...
definicí jazyka (Java Language Definition) – syntaxe a
sémantika jazyka
popisem chování JVM
popisem Java Core API
Radek Kočí
Seminář Java – Úvod
9/ 23
Java – platforma
Převzato z http://java.sun.com
Radek Kočí
Seminář Java – Úvod
10/ 23
Specifikace a implementace Javy
Specifikace Javy
Standard Edition
Enterprise Edition
Micro Edition
Implementace Javy
Java Development Kit – obsahuje vývojové nástroje
Runtime Enviroment – obsahuje jen běhové prostředí pro
spouštění hotových přeložených programů
Radek Kočí
Seminář Java – Úvod
11/ 23
Verze Javy
Hrubé členění
verze Java (před Java 2, v1.2)
verze Java 2
verze Java (po Java 2, v1.5)
Číslování verzí (dříve)
major číslo (např. Java 2, v1.4)
při změně major čísla se může měnit Core API a někdy i
jazyk
minor číslo (např. Java 2, v1.4.2)
změnu minor (třetího) čísla doprovází jen odstraňování
chyb
J2SE ⇒ Java SE
Radek Kočí
Seminář Java – Úvod
12/ 23
Verze Javy
version
JDK 1.1.4
JDK 1.1.5
JDK 1.1.6
JDK 1.1.7
JDK 1.1.8
J2SE 1.2
J2SE 1.2.1
J2SE 1.2.2
J2SE 1.3
J2SE 1.3.1
J2SE 1.4.0
J2SE 1.4.1
J2SE 1.4.2
code name
Sparkler
Pumpkin
Abigail
Brutus
Chelsea
Playground
(none)
Cricket
Kestrel
Ladybird
Merlin
Hopper
Mantis
release date
Sept 12, 1997
Dec 3, 1997
April 24, 1998
Sept 28, 1998
April 8, 1999
Dec 4, 1998
March 30, 1999
July 8, 1999
May 8, 2000
May 17, 2001
Feb 13, 2002
Sept 16, 2002
June 26, 2003
Radek Kočí
Seminář Java – Úvod
13/ 23
Verze Javy
version
J2SE 5.0 (1.5.0)
Java SE 6
Java SE 7
code name
Tiger
Mustang
Dolphin
Radek Kočí
release date
Sept 29, 2004
Dec 11, 2006
Seminář Java – Úvod
14/ 23
Java Technology History
1990 – Green Project
1992 – OAK, použitý na PDA
1995 – první verze Javy, Java pro Netscape
1996 – Java 1.0, další podpora Javy
1997 – Java 1.1, Java Web Server
1999 – XML, NetBeans (Praha), J2SE, J2EE, J2ME
2004 – Java SE 5
2006 – Java SE 6
2007 – JDK uvolněno pod GPLv2 – OpenJDK
2009 – Java SE 7 ve vývoji – OpenJDK
Radek Kočí
Seminář Java – Úvod
15/ 23
Verze Javy
Internetové zdroje
http://java.sun.com
http://openjdk.java.net
https://jdk7.dev.java.net/
Radek Kočí
Seminář Java – Úvod
16/ 23
Distribuce Javy
Podmínky získání a používání
vývoj různých distribucí (Sun Microsystems, IBM, Open
Source, . . . )
používání Javy pro běžný vývoj (i komerční) je zdarma
redistribuce JRE je možná zdarma
používání a redistribuce JDK včetně zdrojových kódů se
řídí licencí (různé licence)
Stažení distribuce Sun
http://java.sun.com (pro Windows, Solaris, Linux)
dokumentace se stahuje z téhož místa, ale samostatně
(nebo lze číst z WWW)
Radek Kočí
Seminář Java – Úvod
17/ 23
Obsah vývojové distribuce Javy
Obsah adresářů
bin – vývojové nástroje (Development Tools) určené k
vývoji, spouštění, ladění a dokumentování programů v
Javě.
jre – běhové prostředí Javy (Java Runtime Environment);
obsahuje Java Virtual Machine (JVM), knihovnu tříd Java
Core API a další soubory potřebné pro běh programů v
Javě
lib – přídavné knihovny (Additional libraries) jsou další
knihovny nutné pro běh vývojových nástrojů
demo – ukázkové applety a aplikace (Demo Applets and
Applications); příklady zahrnují i zdrojový kód
Radek Kočí
Seminář Java – Úvod
18/ 23
Nástroje ve vývojové distribuci
Pod Windows jsou to .exe soubory umístěné v podadresáři bin
java – spouštěč (přeloženého bajtkódu)
javac – překladač (.java -> .class)
javadoc – generátor dokumentace API
jar – správce archivů JAR (sbalení, rozbalení, výpis)
jdb – debugger
appletviewer – referenční prostředí pro spouštění
appletů
Radek Kočí
Seminář Java – Úvod
19/ 23
Java Virtual Machine
Překladač generuje byte-kód pro JVM
JVM interpretuje byte-kód
Optimalizace (JIT)
Radek Kočí
Seminář Java – Úvod
20/ 23
Praktické informace
Co je nutné udělat
Cesty ke spustitelným programům (PATH) musejí
obsahovat i adresář $JAVA_HOME/bin
Co je vhodné udělat
Systémové proměnné by měly obsahovat:
JAVA_HOME = kořenový adresář instalace Javy, např.
JAVA_HOME=/usr/local/java
CLASSPATH = cesty ke třídám (podobně jako v PATH jsou
cesty ke spustitelným souborům), např.
CLASSPATH=$HOME/java
Radek Kočí
Seminář Java – Úvod
21/ 23
Distribuce Javy na FIT
merlin.fit.vutbr.cz
Java SE 6 (1.6.0_18) — /usr/local/share/Java
Netbeans 6.8
Ant 1.7.1
základní systémové proměnné jsou nastavené
Radek Kočí
Seminář Java – Úvod
22/ 23
Distribuce Javy na FIT
Test spuštění Javy
javac -version
java -version
java -client -version
Radek Kočí
Seminář Java – Úvod
23/ 23

Podobné dokumenty

Seminár Java

Seminár Java obsahuje Java Virtual Machine (JVM), knihovnu tříd Java Core API a další soubory potřebné pro běh programů v Javě lib – přídavné knihovny (Additional libraries) jsou další knihovny nutné pro ...

Více

Seminár Java I

Seminár Java I • jre – běhové prostředí Javy (Java Runtime Environment); obsahuje Java Virtual Machine (JVM), knihovnu tříd Java Core API a další soubory potřebné pro běh programů v Javě • lib – přídavné ...

Více

Seminár Java I

Seminár Java I jre. Obsahuje Java Virtual Machine (JVM), knihovnu tříd Java Core API a další soubory potřebné pro běh programů v Javě. • Přídavné knihovny (Additional libraries) v podadresáři lib jsou dalš...

Více

Seminár Java

Seminár Java obsahuje Java Virtual Machine (JVM), knihovnu tříd Java Core API a další soubory potřebné pro běh programů v Javě lib – přídavné knihovny (Additional libraries) jsou další knihovny nutné pro ...

Více

3. Základy programovacího jazyka Java

3. Základy programovacího jazyka Java definicí jazyka, což je syntaxe a sémantika jazyka, dále popisem chování virtuálního stroje JVM a popisem Java Core API. Co se týče vývoje Javy, nejrychleji se vyvíjí Java Core API, základní knihov...

Více

Statika 2 - 1. prednáška Prosté prípady pružnosti: Prostý ohyb Prosté

Statika 2 - 1. prednáška Prosté prípady pružnosti: Prostý ohyb Prosté Prosté případy pružnosti: Prostý ohyb Prosté kroucení vybraných průřezů

Více

Významné zdroje http:// java.sun.com Historie

Významné zdroje http:// java.sun.com Historie • Abstraktní počítač – JVM, který sestává z runtime systému, což je část realizující vazbu na hardware, a interpretu, který vykonává bytový kód • Aplikační programové rozhraní (Java Core API) - což...

Více

Matematika 1 - Sdružení TurnovFree.net

Matematika 1 - Sdružení TurnovFree.net K̌ M., H J.: Matematika pro ekonomické fakulty 2, Ekopress

Více

Vývoj programovacích jazyků

Vývoj programovacích jazyků vazba typů), C++ (Stroustrup 85- C a Simula) • další OO jazyky - Eiffel (Mayer), Modula3, Oberon (Wirth) • OPS5, CLIPS - pro zpracování znalostí

Více

JAVA vývojová prostředí sborník CIV 1/2005

JAVA vývojová prostředí sborník CIV 1/2005 Pro spuštění libovolného programu v jazyce Java je potřeba podpora tzv. JRE v operačním systému. V systému obvykle bývá nainstalováno více verzí JRE, které navíc tvoří podmnožinu JDK (Java Deve...

Více