A megkerülhetetlen JavaScript

Published 2011. 10. 13. by Admin in IT Pro | Oktatás

Bár a Google épp most jelentette be a JavaScript "utódját", sok bitnek kell lefolynia az ADSL-en addig, amíg a trónfosztás megtörténik. Ha egyáltalán megtörténik.

A tudomány mai állása szerint a JavaScript mindenre jó. Ezt az a Fabrice Bellard bizonyította be, aki egyrészt a kváziszabvány videókonvertáló motor, az FFMpeg atyja, másrészt az a fickó, aki 2700 milliárd számjegyig kiszámította a PI értékét egy laptoppal. Nos, amikor hősünk új kihívást keresett magának 2011-ben, figyelme a világ leglehetetlenebb, leglassabb, leginkompatibilisebb nyelve, a JavaScript felé fordult, és mindjár készített is egy virtualizációs hostot, ami – legalábbis szakmai bravúrként – méltó testvére a VMWare-HyperV-KVM családnak. Ez nem mese. Bárki kipróbálhatja a teljesen működőképes, böngészőben futó Linux virtuális gépet a következő címen: http://bellard.org/jslinux/

Bravúr ide, bravúr oda, a JavaScript az a nyelv, amelyet talán a világon a legtöbben utálnak a Visual Basic után. Lassú (mert soronként fordul, magyarul interpretált), trehány (mert a változók kaméleon típusúak, úgy ütöm felül az intet egy stringgel, hogy észre sem veszem), nagyképű (C-ajkú, objektumorientált), és nincs belőle két egyforma. És mégis: a Microsoft, a .net keretrendszer, a C# nyelv és a SilverLight birtokában a Windows 8 felületének elsődleges programozási nyelvévé a JavaScriptet tette. Informatikatanári körökben nemrég felmerült, hogy a programozás oktatását talán a JavaScripttel kellene kezdeni holmi komolyabb nyelvek (C++, C#) helyett.

Ennyi remek példa után joggal kérdezhetnénk: mindenki megbolondult?

A válasz az, hogy igen, de. A JavaSrcriptnek ugyanis van egy hallatlan előnye az összes többi programozható rendszerhez képest, legyenek azok bármennyire is kifinomultak, platformfüggetlenek, villámgyorsak és típushelyesek. A JavaScript mindenütt ott van, ahol böngésző van, mindenfajta telepítgetés nélkül. Böngésző pedig ma már mindenütt van, a telefontól az objektumorientált kenyérpirítóig. Nem , nem Java van ott, hanem JavaScript.

Sőt, ez az a nyelv, amire biztosan számíthatunk, hogy rendelkezésre áll, ha dinamikus weboldalt szeretnénk létrehozni. Az Apple gépen nincs Flash, a Microsoft gépein nincs JAVA, a Linuxon nincs friss SilverLight, az Amazon tabletjén pedig semmi nincs az előzőek közül.

Persze ha valaki szerveroldali webprogramozóként tengeti mindennapjait (php vagy asp.net), megpróbálhat mindent szerveroldalon elintézni, de úgysem fog sikerülni neki. Amikor pedig jön a feladat, hogy a weboldal újratöltődés nélkül hozzon fel új adatokat, már menthetetlenül a böngészőben vagyunk. Előbb-utóbb mindenki a JavaScript szürkének egyáltalán nem mondható világában kóvályog minden támpont nélkül. Pedig van támpont, sőt, segítség.

2009-ben egy csapat webfejlesztő fejébe vette, hogy megreformálja a böngészőoldali programozást, kiiktatva a legnagyobb problémát, a teljesen kaotikus, gyártóról gyártóra változó objektummodellt a rendszerből. Mivel a JavaScript mindenre jó, nem volt túl nehéz dolguk, amikor JavaScriptben lértehoztak egy új „nyelvet”, a JQueryt, amely elfedi előlünk a katyvaszt, és egységessé teszi az össes böngésző összes beépített és beépítetlen lehetőségének használatát. A háttérben persze vadul megy az IF-elgetés, hiszen valakinek le kell kezelni az olykor tréfás különbségeket, de a JQuery konzorcium pont ezt vállalta fel helyettünk.

Szlogenjünk (write less, do more) hűen kifejezi az elképzelés lényegét: mi csak a JQueryt hívogatjuk, ő minden elintéz a Safarival, IE-vel, Chrome-mal, Firefoxszal, Operával. Sőt, egy csomó dolgot pluszban is megvalósítottak, gondoljunk csak az animációkra. Egy beúszó menüt nulláról leprogramozni, a <div>-et pixelenként léptetni - emberhalál. Egy menünek azt mondani, hogy ússz be, lényegesen egyszerűbb. Ami nekünk maradt, az 1 dollár, vagyis egy dollárjelet leírva lépünk be a JQuery varázslatos világába, ahol például közvetlen lehetőségünk van a html-elemek CSS-stílusainak manipulálására, valahogy így:

$(„Akarmi”).addClass(„piros”);

A dollár mögött azonban egy egész világ áll. AJAX-hívások, CSS-szelektorok, manipulálható attribútumok, események, animációs függvényhívások stb. Ezeket sajnos hagyományos módon meg kell tanulni ahhoz, hogy a „write less, do more” valóban érvényesüljön. Ehhez jön kapóra az IT Factory legújabb, online is végezhető tanfolyama, a JQuery és AJAX, mely október 22-től, szombati napokon kerül megrendezésre. A tanfolyam különlegessége, hogy az előadásokról videófelvétel készül, melyet a hallgatók megkapnak, így bármikor vissza tudnak térni egy-egy rész átismétléséhez. További infó a tanfolyamról itt: http://itfactory.hu/Info/JQuery

Végül egy kis érdekesség. Külön figyelmet érdemel a JQuery egyik leágazása, a JQuery UI névre hallgató gyűjtemény, amivel egy hívásra egyszerűsödik egy párbeszédpanel, egy csúszka vagy egy naptár megjelenítése. Hogyan akasszunk előugró naptárat egy dátumbeviteli mezőre? Így:

$(„#Datummezo”).datepicker();

A http://jqueryui.com oldalon bárki eljátszadozhat a csúszkákkal, panelekkel, sőt, saját dizájnt is varázsolhat magának, amit szabadon felhasználhat a projektjeiben.

 


Megjegyzések

adam

2011. október 13. 3:17

adam

"És mégis: a Microsoft, a .net keretrendszer, a C# nyelv és a SilverLight birtokában a Windows 8 felületének elsődleges programozási nyelvévé a JavaScriptet tette."

Ez azért nem pontosan így van szerintem. Én inkább azt mondanám, hogy az MS a HTML+JavaScrip+CSS hármast az előbbiekkel (.NET, C#, SilverLight) egyenértékű szintre emelve, lehetőséget ad az eddig csak webre fejlesztőken a desktop világba való belépésre. Mert azt azért kétlem, hogy aki eddig C#-ban fejlesztett SilverLight, vagy WPF környezetben, az most rohanni fog, hogy JavaScript-ben készítsen Metro stílusú programokat. Főleg, hogy a végeredmény úgyis Win8 specifikus lesz.

De ettől függetlenül abban egyetértünk: ha valaki HTML-ben nyomul, akkor a JavaScript valóban megkerülhetetlen.

Megjegyzések lezárva

Hőskor. Az internet kora.

Az életnek nincs célja és nincs értelme. Az életnek szépsége van.