Seminár Java
Transkript
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
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 ...
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é ...
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š...
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 ...
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...
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ý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ž...
Matematika 1 - Sdružení TurnovFree.net
Ǩ M., H J.: Matematika pro ekonomické fakulty 2, Ekopress
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í
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...