:

Szerző: Gálffy Csaba

2015. március 27. 11:30

Google Dart: teljes hátraarc

Meglepetésre teljes hátraarcot csinált a Google a JavaScript leváltására fejlesztett Dart kapcsán. Az új elképzelés szerint marad a JavaScript köztes nyelvnek, a Dart futtatómotorja pedig nem is kerül be a Chrome-ba.

A Google álláspontja eddig egyértelmű volt: a JavaScript nem jó a webes alkalmazásokra, helyette egy olyan alternatív nyelvre van szükség, amelyet az alapoktól ehhez a feladathoz fejlesztettek. A cég (szokásához híven) kezébe is vette a kezdeményezést és több éves fejlesztői munkával letette az asztalra a Dart nyelvet. A cégnek arra is volt kész válasza, hogy hogyan lesz ebből a Google-technológiából iparági szabvány: a Dartot a cég megnyitotta, szabványosította, majd átnyújtotta az irányítást a független Ecmának, amely a JavaScript gondozásáért is felel. Az átállás időszakára, míg minden böngészőben megjelenik a Dart futtatómotorja, egy JavaScriptre fordító réteget is írt a cég, a kompatibilitás jegyében.

Győzött a JavaScript

A fejlesztés megkezdése óta azonban hatalmasat fordult a webes alkalmazások világa és átalakult benne a JavaScript szerepe is. Míg néhány évvel ezelőtt tényleg ezen a nyelven írták a fejlesztők a webapp kódját, ma az igazán bonyolult oldalak már nem ebben, hanem egy magasabb rendű nyelvben (például Dartban vagy TypeScriptben) íródnak, ebből állít elő egy fordítóprogram mindenhol futó, mindennel kompatibilis JavaScriptet. Ezzel sikerült kiküszöbölni a nyelv egyik legnagyobb problémáját, a nagy kódbázisú szoftverek fenntarthatóságának kérdését - akinek ez probléma volt, feljebb tudott lépni. Eközben persze a JavaScript sem stagnált, a nyelvbe folyamatosan szivárognak bele az ECMAScript 6 (következő generációs JavaScript) fejlett képességei, ezeket pedig a JS-motorok fejlesztői egymással versenyezve sietnek implementálni a végrehajtói oldalon.

A bejelentéssel a Google is belátta, hogy a JavaScript iparági szintű lecserélése, mint célkitűzés részben okafogyottá, részben megvalósíthatatlanná vált, ez pedig a Dart fejlesztésében is új irányként jelenik meg. Eszerint a jövőben a Dart mint magas szintű, JavaScriptre fordító nyelv koncepcióját viszi tovább, a Dart kód natív futtatását a Google nem erőlteti tovább, a Dart VM pedig a Chrome-nak sem válik részévé. Hiába volt a készülő Dart VM számottevően gyorsabb a szintén saját fejlesztésű V8-nál, a kompatibilitás és a fent említett többi megfontolás miatt a natív futtatásról lemondott a cég.

Teljesítményben alázott a Dart VM.

Ünnepi mix a bértranszparenciától a kódoló vezetőkig

Négy IT karrierrel kapcsolatos, érdekes témát csomagoltunk a karácsonyfa alá.

Ünnepi mix a bértranszparenciától a kódoló vezetőkig Négy IT karrierrel kapcsolatos, érdekes témát csomagoltunk a karácsonyfa alá.

Ez hatalmas pálfordulás, a Google még nyáron is teljes lendülettel a Dart natív futtatása mögött állt, júliusban például bejelentette a szerveroldali Dart VM elérhetőségét a Google App Engine-en. A futtatókörnyezet dockeres kontérként érhető el, ebben a formában húzható fel a Google felhőjén. A bejelentés ugyan erre nem tér ki, de valószínűsíthető, hogy a cég ezt a projektet is befejezi, és szerveroldalon is leállítja a Dart VM fejlesztését.

A Dart 1.1 bejelentéséről és újdonságairól itt írtunk részletesebben.

De a Dart is marad

A Google ettől függetlenül teljesen elkötelezett a Dart mögött, a nyelv egyik legnagyobb használója, a Google Ads vezetője, Scott Silver így nyilatkozik: "Eltökéltek vagyunk, hogy a következő generációs webes alkalmazásainkat Darttal fejlesztjük és megújult fókuszként az optimális JavaScript kód generálását határoztuk meg, amely minden modern böngészőben nagyszerű alkalmazásokat jelent majd. A Dart jelentősen megnövelte programozóink hatékonyságát, sokkal gyorsabban tudunk szolgáltatásokat beindítani és iterálni. Jelenleg egymillió sornyi Dart kódunk van és mennyisége gyorsan növekszik." A Dartot egyébként nem csak az Ads csapat, hanem a Fiber, Express, valamint az értékesítők is használják, üzleti kritikus alkalmazásaik fejlesztéséhez.

A fentiek fényében nagyon érdekes, hogy a Google által karbantartott AngularJS keretrendszer fejlesztése nem Dartra, hanem a konkurens, azonos céllal létrehozott TypeScript nyelvre vált a 2.0-s kiadással - ez utóbbi a Microsoft ernyője alatt fejlődik.

a címlapról