Historie
Základy Javy lze nalézt v projektu Oak, který vznikl ve firmě Sun na počátku
devadesátých let pro řízení elektronických výrobků. V roce 1994 byl přenesen
jako programovací jazyk do prostředí počítačů pod názvem Java (horká káva).
Velice významným faktorem pro rozvoj používání Javy se stalo v roce 1995
zařazení její podpory do tehdy velice populárního prohlížeče Netscape Navigátor
2.0. Tato podpora umožňovala rozšíření funkčnosti webových stránek, pomocí java
appletů., programů v Javě, stahovaných současně s WWW stránkou a spouštěných
přímo v prohlížeči na straně klienta. Později tato podpora byla zavedena již
zavedena i do dalších prohlížečů a applety se staly nedílnou součástí
internetových stránek.
Tento mechanismus dokonce vedl ke vzniku myšlenky NC (net computers), které
měly existovat bez pevných disků, operačního systému a lokálně instalovaných
programů , měly obsahovat pouze integrovaný internetový prohlížeč a veškeré
programy se měly spouštět skrz něj, ze síťových serverů ve formě java appletů.
Jako výhody se kromě úspor na HW komponentách uváděla zjednodušená administrace
počítačových sítí, zvýšená bezpečnost, rychlé instalace a aktualizace programů a
další důvody. Tato vize se neujala, ceny těchto NC, bez diskových mechanik
nebyly o mnoho nižší než standardní PC, a co bylo možná podstatnější, ze strany
počítačových firem nedošlo k masovému přepsání aplikačního SW do formy appletů,
i když pokusy zde byly.
I přes neúspěch tohoto pokusu (který snad měl šanci nahradit stávající
platformu PC) si Java své místo na slunci udržela, na WWW stránkách našla svojí
"parketu" v plně internetových aplikacích, které zprostředkovávají komunikaci
mezi klientem na internetovém prohlížeči a službách přístupných přes internetový
server. Zde se využily výhody Javy, její robustnost, stabilita, rozsah funkcí a
hlavně bezpečnost. I proto podporu Java appletů najdeme v největší míře na WWW
stránkách internetových bankovnictví a dalších aplikací, vyžadujících vysokou
míru stability a zabezpečení.
Rozšíření Javy
Java se však neomezuje pouze na java applety,právě naopak. Její
výhodu, multiplatformitu, deklarovalo populární heslo : Write once run everywhere. Zdrojový kód je při vývoji přeložen do spustitelného mezikódu (bytecode) , který lze pak spouštět pomocí
nainstalovaného runtime prostředí (Java Virtual Machine), přímo na různých
typech počítačů či technických zařízeních bez nutnosti nového překladu.
Protože však tato přenositelnost není a nemůže být, hlavně z technickým příčin
rozhraní) 100procentní , vyvinulo se několik edicí Javy, lišících se drobnými rozdíly a rozšířeními a
spojených společným jazykem a velkou skupinou knihoven.
Mezi hlavní platformy Javy v současné době lze uvést :
- spustitelné aplikace na počítačích - J2SE (java 2 standard edition).
Java je rozšířená na rozsáhlé skupině počítačů, od PC mainframy až k hadheldům, na Linuxu, Unixu, Windows ,
a další.Většina distribucí Linuxu již v sobě obsahují vývojové prostředky i runtime prostředí Javy.
Na rozdíl od jazyka C, který je rozšířen stejně nebo i více, by přenositelnost programu měla být dána ne pouze jen na úrovni zdrojového kódu,
ale spustitelného programu, jak bylo řečeno výše.
- applety
O těch již jsme již mluvili, jedná se o programy v jazyce Java, které se stahují a spouštějí
společně s WWW stránkou, a rozšiřují její funkčnost. přímo v prohlížeči.
- servlety - J2EE (java 2 enterprise edition)
webové služby na WWW serverech, generující
dynamické HTML stránky
- Java Server Pages (JSP)
umožnují kombinovat v jednom WWW
dokumentu HTML kód i příkazy Javy,přičemž Java příkazy se zpracovávají a
jejich výstupy generují do obsahu WWW dokumentu ještě na serveru.
Tím
se odlišují od Javascriptu, který se zpracovává až na klientovi v prohlížeči.
Javascript je skriptovací jazyk zapisovaný přímo do HTML stránek a má s Javou
společnou jen velmi úzkou skupinu příkazů.
- Java aplikace pro malá zařízení - J2ME (java 2 micro
edition)
mladá ale bouřlivě se rozšiřující platforma, vídaná v
poslední době zvláště na mobilních telefonech.
Výklad tohoto seriálu začne od prvních uvedených, tedy vývojem spustitelných aplikací v Javě (J2SE), plus samostatný oddíl o appletech. Bude-li zájem , bude seriál pokračovat i výkladem ostatních edicí.
.
Vlastnosti jazyka
Java je vyspělý programovací jazyk,obsahující všechny vlastnosti, které jsou
vyžadovány v moderním programování, od modularity programu, řídících konstrukcí,
přes silnou typovou kontrolu, multithreading, ošetření vyjímek, správu paměti, i
silnou podporu pro databáze, XML a síťové operace.
K jejím výhodám patří kromě
již zmíněné multiplatformity, patří robustnost, škálovatelnost a vysoká bezpečnost,
která jí profituje pro používání na kritické aplikace na mainfraimových
počítačích.
Nižší rychlost, způsobená zpracováním v runtime prostředí může být
urychlena s pomocí specializovaných překladačů na cílovém prostředí (Java just-in-time, JIT).
I když základní vývojové prostředí obsahuje pouze řádkový překladač, existuje mnoho vývojových nástrojů a rozšíření dalších firem autorů včetně IDE, i s podporou RAD vývoje GUI aplikací.
Obsah Javy však nelze omezit jen na výčet jejích příkazů. Java je především silně
objektová, což umožňuje v ní modelovat, vytvářet, používat a rozšiřovat rozsáhlé
knihovny a systémy.
Právě objektově je třeba myslet ne jen při psaní
programu, ale již při návrhu a analýze. Pro tyto účely byl vytvořen UML, Unified
Modeling Language, modelovací jazyk slouží k objektovému modelování a popisu
konstrukcí reálného světa, převáděných do světa počítačů a informačních
systémů.
To však již překračuje
rozsah tohoto seriálu, který bude zaměřen přímo na programování v Javě. Příště
si popíšeme instalaci, překlad a spouštění java programů a napíšeme a spustíme první
vzorový program.