Elkészült a JavaScriptet leváltó Google Dart
Ma rajtolt el a Google új kezdeményezése, a webes alkalmazások motorjául szánt Dart programozási nyelv. A JavaScript kiváltására született nyelv még gyerekcipőben jár, létezése azonban fontos lökést adhat a web fejlődésének.
Elérhető a korábban beharangozott Google Dart programozási nyelv specifikációja és a hozzá kapcsolódó anyagok - jelentette be a projektet vezető Lars Bak a Dániában zajló GOTO konferencián. A várakozásoknak megfelelően a Dart egyértelműen a JavaScript vetélytársaként lép fel, amelynek hosszú távon helyére is lépne. "Ha továbbra is egyre jobbá akarjuk tenni a webet, innoválnunk kell, beleértve az új programozási nyelveket is" - jelentette ki Bak a bemutató során. Bak korábban a Chrome V8 JavaScript motorjának vezető fejlesztője volt, így járatosnak tekinthető mind a nyelvvel kapcsolatos, mind a böngészővel kapcsolatos problémákban.
A Dartot a Google a tipikus webes alkalmazások fejlődését figyelembe véve alkotta meg. Ennek megfelelően a típus megválasztása ("typing") opcionális, a fejlesztés közben migrálható a kód statikus typingra, ahogy a projekt fejlődése megkívánja. A Dart támogatja az osztályokat is, így hatékonyan definiálhatóak belső API-k, illetve könnyebben újrahasználhatóak a metódusok és adatok. A Dart támogatja a függvénykönyvtárakat, amelyek tartalma garantáltan nem változik és független alkalmazások építhetőek rá. A fejlesztői eszközök terén is pozitív változást hoz a Dart, lesznek futtatókörnyezetek és a nyelvet támogató IDE-k is, amelyek megvalósítják az "edit-and-continue" programozási módszert is.
A Dart megalkotásáért sokan kritizálták a Google-t, az iparági szereplők szerint ugyanis a keresőóriás saját fejlesztésű programnyelvet akar az internetre erőszakolni a bevett szabványalkotó fórumok megkerülésével. A kritikusok szerint ez nagyban hasonlít a Microsoft ASP .NET-stratégiájához, a zárt programozási környezetet úgy kívánta de facto szabvánnyá emelni a redmondi cég, hogy nem működött együtt partnerekkel és intézményekkel. A Google álláspontja szerint azonban első lépésben megalkotja a koherens, és a kitűzött céloknak megfelelő nyelvet, majd elkezdődhet az iparági egyeztetés annak szabvánnyá emeléséről. Bak nyilatkozata szerint fordítva nem működik a folyamat, ez ugyanis csak "sok ordibálást eredményez".
Teljesítményorientált programozás
A Google elemi érdeke, hogy a webes alkalmazások fel tudják venni a versenyt a natív alkalmazásokéval, ehhez azonban egyre nagyobb teljesítményre és mind több funkcióra van szükség. A böngészők sebességversenyének beindítása után most az új frontvonal az alkalmazások nyelve lesz, ahol hasonló logika alapján nevezi be versenyzőjét a Google.
A Dart bevezetése analóg a Chrome böngésző bevezetésével. A Google böngésző fejlesztése eredetileg egyetlen célt szolgált, a böngészők JavaScript alatti teljesítményét használható szintre gyorsítani, és kompetitív nyomást alá helyezni a nagy böngészőket. A terv sikerrel járt, mára már a Microsoft is az Internet Explorer sebességét demózza - így a Chrome részesedésétől függetlenül a Google akarata érvényesült. Ehhez hasonlóan a Dart projekt elsődleges célja nem a világuralom, hanem egy új teljesítménystandard megalkotása, amelyhez később a JavaScript is alkalmazkodni kényszerül. A Dart ugyanakkor magában hordozza annak lehetőségét is, hogy amennyiben a JavaScript nem képes megújulásra, hosszabb vagy rövidebb időn belül annak helyére lépjen.
CI/CD-vel folytatódik az AWS hazai online meetup-sorozata!
A sorozat december 12-i, ötödik állomásán bemutatjuk az AWS CodeCatalyst platformot, és a nyílt forráskódú Daggert is.
Házi adoptáció
A várakozásoknak megfelelően a Dart először a Chrome böngésző alatt kap támogatást. Bak elmondása szerint az első teljesítményelőnyök már akkor ki fognak ütközni: a "snapshotting" névre keresztelt technológia használatával ugyanis jelentősen lerövidül a webes alkalmazások betöltésének időtartama. A snapshotting gyakorlatilag fogja az elkészült alkalmazást és egyetlen adattömbbe csomagolja. A demo szerint egy tipikus, 55 ezer soros alkalmazás mintegy 60 ezredmásodperc alatt töltődik be így, szemben a snapshotting nélküli 640 ezredmásodperccel. Bak szerint ez utóbbi szám jellemző a JavaScript teljesítményére is, csupán induláskor tehát mintegy tízszeres gyorsulással lehet számolni.
A Dart fejlesztésének fontos eleme, hogy a Google tervbe vette a kódot JavaScriptre fordító eszköz elkészítését is, így a Dartra fejlesztők biztosak lehetnek benne, hogy alkalmazásuk minden böngészőn fut - a legnagyobb teljesítményt azonban a natív Dart virtuális gépen fogja adni majd.
A Dart 78 oldalas specifikációja letölthető a kezdeményezés weboldaláról.