Úvod. Leden Fakulta informačních technologií VUT. Radek Kočí Seminář Java Úvod 1/ 22

Podobné dokumenty
Úvod. Únor Fakulta informačních technologií VUT. Radek Kočí Seminář Java Úvod 1/ 23

Program. Organizace semináře Základní principy OOP Úvod do programovacího jazyka Java Distribuce

2005/2006. Seminář Java I p.1/48

3. Základy programovacího jazyka Java

Úvod do programování v jazyce Java

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25

Java [džava] nebo [džáva] v americkém slangu "kafe" Sun Microsystems nyní Oracle

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Úvod do programování v jazyce Java

11. Přehled prog. jazyků

Matematika v programovacích

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Základy programovaní 3 (Java)

Programování 1 - Java

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Algoritmizace. Cíle předmětu

Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU

2 Postup při programování, úvod do programovacího jazyka Java

Ant aneb Ferda Mravenec, práce všeho druhu

1 Návod na instalaci prostředí LeJOS-NXJ a přehrání firmwaru NXT kostky

Server-side technologie pro webové aplikace

Připravil: Ing. Vít Ondroušek, Ph.D. Technologie.Net Framework

IB111 Programování a algoritmizace. Programovací jazyky

9. Ladění a testování programů. booleovský výraz

Instalace produktu Ontopia. ver (open-source verze)

Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

INSTALACE PRODUKTU ONTOPIA KNOWLEDGE SUITE

Seznámení s prostředím dot.net Framework

Programovací jazyky Přehled a vývoj

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky

Technologie Java. Jaroslav Žáček

Vývojové nástroje jazyka Java

ŠKOLENÍ PROGRAMOVACÍHO JAZYKA JAVA JAVA - ZÁKLADY

Platformy / technologie. Jaroslav Žáček

ČÁST 1. Základy 32bitového programování ve Windows

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Převod 4GL aplikací do webového prostředí. Ing. Jan Musil, IBM ČR Community of Practice for

Obchodní podmínky technické podpory programu ESRI Developer Network (EDN)

Karel Bittner HUMUSOFT s.r.o. HUMUSOFT s.r.o.


Úvodní informace. Petr Hnětynka 2/2 Zk/Z

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz

Návrh a implementace informačního systému pro restaurační zařízení s využitím Java technologií

2002 Magister (Mgr.), studijní program: matematika, specializace matematikamanagement

PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Instalace a konfigurace web serveru. WA1 Martin Klíma

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU

Studijní zdroje. Studijní zdroje. Studijní zdroje. Podmínky ukončení předmětu. Vlastnosti a použití jazyka Java. Semestrální projekt

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Nové jazykové brány do Caché. Daniel Kutáč

Softwarové komponenty a Internet

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

SOUČASNÁ OBJEKTOVĚ ORIENTOVANÁ VÝVOJOVÁ PROSTŘEDÍ ZALOŽENÁ NA JAZYCE SMALLTALK

Část 1 Organizace předmětu. Základní pojmy. Část 2 Programování a výpočty. Část 3 Programovací jazyk Java

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Algoritmizace. Algoritmizace (Y36ALG), Šumperk - 1. přednáška 1

Technology Entry form Entry up-to-date? Internal links Faulty internal Possible internal links

X33EJA Enterprise Java

Úvodní informace. Petr Hnětynka 2/2 Zk/Z

Databáze hudebních rodokmenů

INSTALAČNÍ MANUÁL RANIT

VYUŽITÍ REGIONÁLNÍCH FUNKCÍ A WWW ROZHRANÍ V INTEGROVANÉM KNIHOVNÍM SYSTÉMU KPWINSQL

Statická analýza kódu - za kód bez chyb

(Enterprise) JavaBeans. Lekce 7

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

Obsah. Předmluva Začínáme: překlad, spuštění a ladění 27

Úvod. unx-predn_01-uvod.odt :13:43 1

Programovací jazyk Java

Testovací metoda. Testovací metoda. public class SimpleTest {

Správa projektů a testování

Vývoj software pro Linuxové distribuce. Installfest Praha,

Osnova. GIOP a IIOP IDL IOR POA. IDL Klient Server. 2 Historie. 3 Princip a základní pojmy. 4 Implementace. 5 Aplikace CORBA

TISKOVÁ ZPRÁVA ČESKÉHO LOKALIZAČNÍHO TÝMU OPENOFFICE.ORG ČESKÝ LOKALIZAČNÍ TÝM OZNAMUJE DOKONČENÍ ČESKÉ VERZE NOVÉ VLASTNOSTI. 7.

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Pokročilé programování na platformě Java. Úvod

Simulátor programované gramatiky

Základy programování (IZP)

BI-AWD. Administrace Webového a Databázového serveru Instalace webového serveru Apache httpd

Domino 10 nové komponenty a související témata (node.js, ES )

Architektury informačních systémů

Architektury informačních systémů

Video tutoriál pro prostředí Eclipse

Systémová administrace portálu Liferay

Co vás čeká. Osvojení si základy analytického myšlení při psaní algoritmů pomocí jazyka Python.

IBM TRIRIGA Application Platform Verze 3 Vydání 4.2. Příručka instalace a implementace

v. 2425a Jak si na PC vypěstovat HTTP (WWW, Web) server a jak ho používat (snadno a rychle) by: Ing. Jan Steringa

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda

Uklízení odpadků a analýza úniku

1. Programování proti rozhraní

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Vytváření uživatelských datových typů a funkcí v Javě

Transkript:

Seminář Java Úvod Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Úvod 1/ 22

Téma přednášky Organizace semináře Java úvod, distribuce Radek Kočí Seminář Java Úvod 2/ 22

Informace, studijní materiály Stránky předmětu http://www.fit.vutbr.cz/study/courses/ija/ zadání úkolů, informace konzultace studijní materiály Hodnocení předmětu zápočet odevzdané funkční úkoly odevzdaný projekt alespoň 50% bodů z projektu Radek Kočí Seminář Java Úvod 3/ 22

Přehled jazyků 1960 Lisp ALGOL Simula-67 1970 C Pascal Ada 1980 Smalltalk Eiffel Self C++ Objective-C Object Pascal 1990 CLOS VisualC++ Ada95 1995 Java Delphi 1998 Java2 2000 C# Radek Kočí Seminář Java Úvod 4/ 22

Programovací jazyk Java Základní charakteristika objektově orientovaný statická typová kontrola jednodušší než C++ (méně syntaktických konstrukcí, méně nejednoznačností v návrhu) v průměru vyšší produktivita programátorské práce v Javě než v C++ 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/ 22

Programovací jazyk Java Základní charakteristika zdarma dostupné nezměrné 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 reálným soupeřem je (Microsoft) C# (zatím převážně na platf. Windows) 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/ 22

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/ 22

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/ 22

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/ 22

Specifikace a implementace Javy Specifikace Javy např. Java 2 Standard Edition, v1.4 např. Java 2 Enterprise Edition, v1.4 Implementace Javy např. Java 2 Software Development Kit, v1.4.2 - obsahuje vývojové nástroje např. Java 2 Runtime Enviroment, v1.4 - obsahuje jen běhové prostředí pro spouštění hotových přeložených pg. Radek Kočí Seminář Java Úvod 10/ 22

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í: 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 11/ 22

Verze Javy Aktuální verze Java SE 6 J2SE 5.0 (1.5.0) aktuálně vždy na webu http://java.sun.com Radek Kočí Seminář Java Úvod 12/ 22

Verze Javy version code name release date JDK 1.1.4 Sparkler Sept 12, 1997 JDK 1.1.5 Pumpkin Dec 3, 1997 JDK 1.1.6 Abigail April 24, 1998 JDK 1.1.7 Brutus Sept 28, 1998 JDK 1.1.8 Chelsea April 8, 1999 J2SE 1.2 Playground Dec 4, 1998 J2SE 1.2.1 (none) March 30, 1999 J2SE 1.2.2 Cricket July 8, 1999 J2SE 1.3 Kestrel May 8, 2000 J2SE 1.3.1 Ladybird May 17, 2001 J2SE 1.4.0 Merlin Feb 13, 2002 J2SE 1.4.1 Hopper Sept 16, 2002 J2SE 1.4.2 Mantis June 26, 2003 Radek Kočí Seminář Java Úvod 13/ 22

Verze Javy version code name release date J2SE 5.0 (1.5.0) Tiger Sept 29, 2004 Java SE 6 Mustang Dec 11, 2006 Java SE 7 Dolphin 2008 Radek Kočí Seminář Java Úvod 14/ 22

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 Radek Kočí Seminář Java Úvod 15/ 22

Distribuce Javy Podmínky získání a používání používání Javy pro běžný vývoj (i komerční) je zdarma redistribuce javového vývojového prostředí je dovolena pouze s licencí od Sunu redistribuce javového běhového prostředí je možná zdarma distribuce vyvíjí Sun Microsystems Inc. (Javasoft) i další výrobci (např. IBM) a tvůrci Open Source 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 16/ 22

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 17/ 22

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 18/ 22

Java Virtual Machine Překladač generuje byte-kód pro JVM JVM interpretuje byte-kód Optimalizace (JIT) Radek Kočí Seminář Java Úvod 19/ 22

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/j2sdk1.4.2 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 20/ 22

Distribuce Javy na FIT merlin.fit.vutbr.cz J2SE 5.0 (1.5.0) /usr/local/share/java-1.5 Java SE 6 /usr/local/share/java-1.6 Netbeans 6.0 Ant 1.7.0.profile JAVA_HOME="/usr/local/share/Java-1.6" PATH="$JAVA_HOME/bin:$PATH" export JAVA_HOME PATH Radek Kočí Seminář Java Úvod 21/ 22

Distribuce Javy na FIT Test spuštění Javy javac -version java -version java -client -version Radek Kočí Seminář Java Úvod 22/ 22