Java čelí tlaku dynamických jazyků

Podle vývojářů jazyk Java nedostačuje požadavkům doby, respektive konceptu Web 2.0. Platforma Java ustupuje v oblas...


Podle vývojářů jazyk Java nedostačuje požadavkům doby, respektive konceptu Web
2.0.

Platforma Java ustupuje v oblasti tvorby webových aplikací vzrůstající oblibě
dynamických programovacích jazyků. Lze ji ovšem upravit a rozšířit
funkcionalitou modulu Java Virtual Machine (JVM) i do světa dynamických jazyků.
K těmto závěrům došli účastníci konference TheServerSide Java Symposium, která
se nedávno konala v Las Vegas.

Kritizovaná Java
Představitelé softwarového průmyslu na konferenčních jednáních kritizovali řadu
nedostatků a problémů, jež používání Javy na straně uživatele (low-end, web
front) provází. Zpochybnili rovněž životaschopnost architektury distribuovaného
computingu Enterprise JavaBeans (EJB), která podle nich neodpovídá aplikačním
trendům v oblasti klientů. Inovace vývoje v jednotlivých vrstvách webu přitom
představuje klíčový prvek konceptu Web 2.0. V něm se totiž web/internet a
prohlížeč stávají převládající aplikační platformou.
"Nemyslím, že by se vývoj v Javě dostal do problémů," říká Bruce Tate,
nezávislý konzultant věnující se vývoji odlehčených aplikací a dodává:
"Například jazyk Ruby a jeho vývojové prostředí Rails jsou rychlé a jasné, což
je pravý důvod současného rychlého růstu jejich oblíbenosti." Platforma Java
provozovaná v podnicích má podle něj na rozdíl od své low-endové verze dobrou,
tj. robustní a komplexní podobu.
Nejspíše i proto se vývojáři shodují, že webové Javě prospělo zjednodušení. Z
tohoto důvodu nedávno vznikla například iniciativa JRuby, jejímž cílem je
vytvoření překladače jazyka Ruby založeného na Javě. Otevření modulu Java
Virtual Machine pro dynamické jazyky by podle zúčastněných zvýšilo produktivitu
vývoje webových aplikací, a tím pádem i jejich rozvoj. Potřebu změn v JVM vidí
i Ari Zilka, CEO společnosti Terracotta. Bez nich další rozšíření low-endových,
tj. kódově a provozně odlehčených, javových aplikací nedostaví, což mimo jiné
brání nástupu konceptu Web 2.0. O nápravu nedostatků by se podle něj měla
postarat vývojářská komunita Javy.
"Velmi mě udivilo, jak populárním se jazyk Ruby stal," řekl Bruce Snyder, člen
projektu Apache Geronimo. "Pro low-endové webové aplikace je Ruby zcela
ideální."

Symbióza?
Bruce Tate připomenul, že v době svého uvedení byla Java poměrně nedospělým
nástrojem. Tato skutečnost pravděpodobně stojí za jejími dnešními problémy v
oblasti moderních webových aplikací. Oba přístupy statický a dynamický by podle
vývojářů mohly v současnosti koexistovat. Pozorovatelé ovšem očekávají skrytý
tlak ze strany skriptovacích jazyků. Důvod je prostý: jsou jednoduché. "Vliv
skriptovacích jazyků na Javu bude ale rozhodně pozitivní," dodává Tate.
Z příspěvků konference rovněž vyplynulo, že většina vývojářů považuje J2EE
(Java 2 Enterprise Edition) za příliš komplexní nástroj pro snadný vývoj
webových aplikací. Na druhé straně ani vývojová prostředí dynamických jazyků
nepředstavují uspokojivé řešení. Trendem blízké budoucnosti by se tak měla stát
vzájemná integrace obou přístupů. Podle pozorovatelů si to vyžádá již zmiňovaný
koncept Web 2.0, tj. přechod internetu od publikačního média na aplikační
platformu. Nutnost snazšího vývoje odlehčených aplikací nabízejících přístup k
tzv. bohatému obsahu představuje podle účastníků konference nejdůležitější
prvek v rozvoji webového prostředí druhé generace. "Vývoj by se měl stát
snazším i díky sjednocení architektury SOA a konceptu Web 2.0," upřesnil Bruce
Snyder.
V této souvislosti se většina diskutujících shodla i na nepříliš světlé
budoucnosti technologie Enterprise JavaBeans, jejíž serverový komponentový
model spadá téměř výhradně do podnikového segmentu. Podle Snydera vyžaduje Web
2.0 příchod zcela nové generace nástrojů pro vývoj odlehčených aplikací.
Rod Johnson, zakladatel firmy Spring Framework, vyjádřil velkou nespokojenost s
aktuální strukturou webu: "Je to celkově chybné. Univerzální klienti v podstatě
plně zvládají pouze HTML a většinově opomíjejí další možnosti." K možným změnám
současného stavu dodal: "Jednou z potenciálně děsivých vyhlídek je účast
Microsoftu na řešení této situace. A oni jsou ve velmi dobré pozici na to, aby
to udělali."

Nejednoznačný Ajax
Velkou roli při tvorbě webových aplikací sehrají podle některých účastníků
setkání technologie Ajax a Pojos (Plain Old Java Objects). Patrick Linskey ze
společnosti BEA Systems očekává, že se podaří propojit framework Ajaxu s
koncovými na prohlížeči nezaloženými aplikacemi. Tento krok označil za zásadní
v uvádění konceptu Web 2.0.
Někteří účastníci ovšem považují současný boom Ajaxu za unáhlený. Existuje
podle nich nebezpečí, že by prohlížeče nemusely akceptovat chod různorodých
aplikací na něm založených. "Technologie Ajaxu nejsou nové, ale nová je možnost
současné implementace XMLHttpRequestu, DHTML a JavaScriptu v prohlížeči," uvedl
Cedric Beust z Googlu. Dočasně podle něj v neprospěch Ajaxu hovoří i stávající
nedostatek kvalitních vývojářských nástrojů.

Soumrak komerce
Jedním z dílčích témat konference byla i role otevřených řešení ve světě
komerčního softwarového průmyslu. Na rozdíl od většiny obdobných setkání se na
pořad jednání dostal i potenciální negativní dopad šíření open source softwaru
na celkový rozvoj odvětví. Rozmach otevřených řešení vyžaduje od komerčních
subjektů změnu obchodního modelu. Tu však nelze realizovat ve všech oborech a
snižující se příjmy softwarových firem mohou do budoucna snižovat i investice
do dalšího výzkumu a vývoje. V tomto ohledu je open source vnímán problematicky
a účastníci diskusí se shodli na tom, že chybí jasná vize dalšího rozvoje
proprietárních řešení. Ta totiž podle názoru mnohých pozorovatelů představují
často vůdčí počiny, jež otevřená řešení mnohokrát pouze následují. A v situaci
snižujících se investic do výzkumu by takovýchto vizionářských produktů
pravděpodobně ubylo.
Nicméně současný open source je prý spolehlivě provozován v řadě oblastí a
činností. Přítomní zástupci firem ovšem zdůraznili skutečnost, že provoz
otevřeného softwaru nikdy není zdarma. Jakákoli forma nasazení open source
řešení generuje náklady. Je třeba odmítnout představu veřejnosti, dle které
platí open source rovná se bezplatnost.
Za nespornou výhodu otevřených řešení ovšem vývojáři považují bohaté možnosti
úprav, přizpůsobení i dalšího vývoje softwaru.
Mezi dva důležité prvky rozvoje webových aplikací zařadili účastníci konference
rovněž problematiku AOP (Aspect Oriented Programming) a potřebu vytvoření
jednotných nástrojů pro sladění webových služeb. První jmenovaný úkol se podle
Johnsona stává hybatelem trhu serverových aplikací. Druhý požadavek souvisí s
nutností automatizace tvorby BPEL (Business Process Execution Language for Web
Services).


Dynamické programovací jazyky
Jde o specifický druh programovacích jazyků, které dokáží za chodu měnit
strukturu kódu. Mohou vytvářet další moduly, přibírat či odebírat funkce nebo
objekty. Při jejich tvorbě a zejména chodu odpadá nutnost kompilace,
provázející statické programovací jazyky. Tato skutečnost patří podle řady
vývojářů mezi jejich hlavní přednosti. Mezi nejznámější zástupce patří
ECMAScript (JavaScript), Lisp, Perl, PHP, Python, Ruby, Smalltalk nebo
VBScript. Mezi sebou se liší stupněm aplikovatelné dynamičnosti, jenž ovlivňuje
i jejich nasazení v praxi.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.