Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 33 reacties

Google heeft ondersteuning voor zijn programmeertaal Dart toegevoegd aan zijn App Engine. Daarmee kunnen ontwikkelaars hun applicaties op Googles servers draaien. Met Dart werkt Google al enkele jaren aan een javascript-alternatief.

Ontwikkelaars kunnen nu dus hun Dart-serverapplicaties draaien op hun App Engine-instances. De Dart-installatie wordt daarbij beheerd door Google, dat zegt de komende tijd te zullen werken aan betere ondersteuning. Voorlopig is Dart voor App Engine nog in bèta.

Google onthulde Dart in 2011. De taal is opensource en gericht op webapplicaties en volgens Google is het een eenvoudig te leren alternatief voor het breed toegepaste javascript. Ook zou Dart in hoge mate schaalbaar zijn en niet alleen soepel draaien op browsers van mobiele telefoons, maar ook op servers goed moeten presteren.

Ondanks de inzet van Google is de adoptie van Dart relatief beperkt. Zo ondersteunen de meeste browsers de taal niet; alleen Google doet dat nog Dartium, een Chromium-fork. Concurrent Microsoft kwam zelfs met zijn eigen javascriptdialect: TypeScript.

Dart voorbeeld

Moderatie-faq Wijzig weergave

Reacties (33)

Als een browser dart DART ondersteund wordt de javascript versie van de dart code gebruikt. Dat is wat trager maar werk in principe wel in de meeste moderne browsers. Persoonlijk ben ik van mening dat DART een prima alternatief voor javascript zou kunnen zijn. Als ik naar de source van b.v. AngularJS vs AngularDart kijk dan zie je dat in AngularJS heel erg veel meer code zit die niets met het domein te maken heeft maar met het om de beperkingen van javascript heen te werken. Hoewel ik het erg knap vind dat ze er toch een cleane API van weten te maken. Ook is het fijn dat als je een API wilt leren kennen dat er code completion is. Een voordeel dat alle strong typed talen hebben. Een tijdje geleden heb ik ergens een video gezien die me deed inzien dat we slecht de norm zijn gaan vinden m.b.t. javascript. Ga zo even kijken of ik het nog kan vinden. Ik kies voorlopig nog steeds voor javascript in mijn projecten maar ik hoop dat er iets voor in de plaats komt.

Gevonden. Sheet nummer 3. Zo herkenbaar.
https://www.dartlang.org/...ponents-javazone-2013.pdf

Video bij de sheets: http://vimeo.com/74391396

En inmiddels is dart al een heel stuk verder.

[Reactie gewijzigd door melgers op 8 november 2014 12:21]

Leuk, dit scheelt weer in de clientbelasting. Ik vraag me wel af hoe veel dit scheelt in de snelheid en de simpliciteit: het lijkt nog steeds heel veel op JavaScript.
Javascript alternatief
Als het geen voordeel oplevert ten opzichte van JavaScript en ook nog eens bijna het zelfde is zal niemand denken: hee laat ik eens overstappen op Dart. Daarvoor moeten er echt duidelijke verschillen en voordelen zijn, en die zie ik hier niet. Dat het script op de Google-servers draait is leuk, maar de prestatiewinst lijkt me nihil.
Dart is vooral gemaakt om object georiŽnteerd te schrijven, het ligt er dus maar net aan waar je voorkeur ligt. Daarbij werkt schuine code vaak nog wel of half in Javascript, hierdoor krijg je vaak rommelige code en prestatieverlies (dit is vaak niet te merken). Omdat Dart een object georiŽnteerd programmeertaal is komt dit een stuk minder vaak voor.

Als je in Javascript je code gewoon netjes programmeert zijn er verder geen voordelen. Het is dus vooral wat je fijner vind programmeren.
Als je in Javascript je code gewoon netjes programmeert zijn er verder geen voordelen. Het is dus vooral wat je fijner vind programmeren.
Het grootste probleem van JavaScript (ES5) is dat je niets kan typeren. Dit betekent dat je een object kan definiŽren
[code]var obj = {};[/code]
en vervolgens ieder willekeurige naam kan geven aan een property
[code]obj[new Date().getSeconds();[/code]
Tools kunnen zo alleen via ingewikkelde code heuristieken snappen dat je een object hebt met een property van een bepaalde naam.
In Dart definiŽer je je objecten meer statisch:
[code]
class MyObject {
string name;
}
[/code]
Tools kunnen zo eenvoudig een warning geven als jij in je code-editor een typo maakt en typt
[code]
var myObject = new MyObject();
myObject.naame = "woei";
[/code]
Kan je toelichten wat schuine code is? JavaScript en Dart zijn beide object georiŽnteerd, misschien bedoel je dat het "type system" verschilt?
Met schuine code bedoel ik dat je soms fouten in je script hebt staan. Het script stopt dan niet helemaal maar gaat gewoon verder. Dit resulteert uiteindelijk tot stukjes code die niks doen en voor mogelijke problemen kunnen zorgen.

Het klopt dat Javascript object georiŽnteerd is maar op een andere manier dan Dart. Dart heeft ongeveer dezelfde syntax als Java. Daarbij dwingt Dart je bijna om gestructureerde codes te schrijven. Javascript is hier veel vrijer in.

Vooral omdat Dart vergelijkbaar is in syntax met Java prefereer ik Dart, vind ik net wat fijner schrijven. Het ligt er dus echt aan wat je fijner vind werken.
er wordt bedoelt dat javascript weakly typed is en niet gecompileerd wordt. dart is volgens mij strongly typed. overigens is Typescript net wat anders en hoort ook niet in deze context genoemd te worden, het compileert namelijk naar javascript en is ook niet als typescript uit te voeren.
Jammer dat ik je reactie niet kan modden, maar van mij krijg je een +2 d:)b

Ik werk zelf al een hele tijd in JavaScript, maar ik zal ook eens naar Dart gaan kijken. :)
Toen ik er een half jaartje gelden naar keek, leek het javascript code te compileren zoals coffee-script doet. Het leek me toendertijd meer een uitgebreid framework met eigen taal dan een 'programmeer-taal'
Dat is waar, maar de gegeven dat je beide talen nog niet (echt) kent, is de leercurve van Javascript flink wat steiler dan die van Dart.
App engine is een fantastisch product, maar komt in twee hele verschillende smaken. Namelijk native app engine en managed VM op Compute engine. Er zijn grote verschillen tussen deze twee omgevingen vooral vwb pricing en hoe je omgaat met resources.

Dart is geÔmplementeerd als managed VM, waardoor je bijvoorbeeld geen website gratis kan draaien, zoals wel het geval is met Python, Java , PHP en GO. Ik ben een grote fan van Python native app engine. Zo draaien we al een paar jaar een flinke applicatie op dit platform, zonder enige verstoring (100% up) met marginaal beheer.

De managed VM is eigenlijk al weer achterhaald en wordt nu ingehaald door Google Container Engine (Docker).

DART is een mooie taal, bedacht door het team dat ook het V8 javascript performance kanon heeft gemaakt. Echter we zien dat het wat stil is de laatste tijd bij het DART team, terwijl javascript zeer snel aan invloed en populariteit wint. Dit is het resultaat van twee belangrijke ontwikkelingen, namelijk Node.js (ook gebaseerd op V8) en ES6, waardoor javascript van een browser script-taaltje is uitgegroeid tot een volwassen omgeving, die traditionele omgevingen met bijvoorbeeld Java ver achter zich laat. Bedrijven als Uber, Wallmart, Paypal om er er maar een paar te noemen, zijn overgestapt, omdat daarmee enorme kosten worden bespaard op het gebied van ontwikkeling en serverkosten.

Wie had dat een paar jaar geleden kunnen denken van javascript, waardoor we over Java gaan zeggen: veel te ingewikkeld en veel te veel gedoe.
Type safety maakt het tig keer prettiger om in te ontwikkelen en onderhouden.
Hoho Typescript is NIET zoals Dart. Waar dart een eigen taaltje is, is TS niet meer dan een laag bovenop JS dat naar native JS compileert
Precies. Typescript is geen dialect het genereert gewoon Javascript.
Dart genereert of kan ook Javascript genereren. Beide. Maar alleen Chrome heeft een Dart Runtime in hun browser.
typescript doet het compile time niet runtime, dus het werkt overal.
Zelfde dus als Dart. Echter heeft dart ook een aparte Runtime in Chrome als extra.
En dan alleen nog maar in een speciale build van Chromium.
Ja, dus niet echt voordeel qua snelheid. Enkel de taal Dart als je dat beter lijkt.
Serverside lijkt me Dart veel handiger. Maar ook daar is NodeJS al ingesprongen.
Werk sinds een tijdje met dart voor zowel client als serverside. Echt een verademing ten opzichte van javascript. Ben alleen bang dat het een stille dood zal sterven gezien de toegenomen populariteit van javascript, zeker met node.js.
Het is ook dat Javascript evolueert. Kijk naar AngularJS 2.0 welke op ecmascript 6 gebaseerd is en dus veel cleaner in gebruik is.

Ecmascript 6 is weer een hele stap vooruit op 5. En ja Dart is heel mooi maar.. niet algemeen ondersteund en zwaar in beheer door Google.

Anders zou ik graag Dart versie van NodeJS gebruiken en Dart op de client side met Angular + Polymer. :) Google weet als geen ander waar het web naar toe moet. Veel beter als de andere reuzen.
Even voor de duidelijkheid:
Dart kan zowel op de server als op de client in een browser draaien.
Dit gaat over Google App Engine, een cloud toepassing voor servers. Het gaat hier dus over een mogelijkheid om Dart op de server te laten draaien.
Het artikel op news.dartlang.org heeft dus niks te maken met browsers of met Javascript.

[Reactie gewijzigd door Left op 8 november 2014 20:58]

Javascript kan ook op de server gedraaid worden (meestal wordt v8 als runtime envirment gebruikt). Zie onder andere nodejs.

De image server van linkendin is javascript geschreven als ik het mij goed herinner.
Volgens wikipedia :
Browser adoption[edit]
A special version of Chromium (the open-source browser at the core of Google Chrome) comes with the Dart virtual machine, allowing it to run Dart programs.[20] As of May 2013, Microsoft Internet Explorer, Mozilla Firefox, Opera Software's Opera browser, and Apple Safari have no plan to embed a separate Dart VM.[citation needed]

Dart source code can be compiled to JavaScript, allowing applications written in Dart to run in all modern web browsers. In the M1 version, released in October 2012, the generated JavaScript reached about 78% of the performance of hand-written JavaScript while native Dart code ran about 21% faster than similar code in V8.[7]
Hoe actueel is deze informatie ? Best jammer dat je DART weer moet compileren naar javascript om fatsoenlijke browser support te genereren , net als LESS in plaats van CSS bijvoorbeeld. (Niet dat LESS geen voordelen biedt tijdens het ontwikkelen, maar voor een productieomgeving nog verre van ideaal)
Die informatie is nog steeds actueel. Die speciale Chromium versie (genaamd Dartium) is nog steeds de enige browser die native Dart kan draaien en er zijn nog geen plannen bekend van Google om die support op korte termijn uit te breiden.
Ja dat was vooral een tijdje geleden erg Hot bij bb gebruiker...XD

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True