Navigation


Dart (Programmiersprache)

21.05.2012 @ 06:41, Boshomi,

{{Infobox Programmiersprache
| Name = Dart
| Logo =
| Beschreibung =
| Paradigma = Objektorientierte Programmierung
| Erscheinungsjahr =
| Entwickler = The Dart Team
| AktuelleVersion =
| AktuelleVersionFreigabeDatum =
| AktuelleVorabVersion = 0.09{{Internetquelle | autor=The Dart Team | url=http://www.dartlang.org/docs/spec/dartLangSpec.pdf | hrsg=www.dartlang.org | format=PDF | sprache=en | titel=Dart Programming Language Specification | datum=10. Mai 2012 | zugriff=2012-05-21}}
| AktuelleVorabVersionFreigabeDatum = 10. Mai 2012
| Typisierung = Dynamische Typisierung
| Implementierung =
| Dialekte =
| Standardisierungen =
| Beeinflusst_von = JavaScript, Scala{{Internetquelle | url=http://www.theregister.co.uk/2011/10/10/google_previews_dart/ | sprache=en | titel=Google shoots Dart at JavaScript | titelerg=It's really not a JavaScript killer, insists author | datum=10. Oktober 2011 | zugriff=2011-10-15}}
| Beeinflusste =
| Betriebssystem =
| Lizenz = Modifizierte BSD-Lizenz
| Website = [http://www.dartlang.org/ www.dartlang.org]

}}

Dart ist eine hauptsächlich von Google entwickelte Web-Programmiersprache. Sie wurde erstmals auf der GOTO-Konferenz am 10. Oktober 2011 in Aarhus vorgestellt.{{Internetquelle | url=http://gotocon.com/aarhus-2011/presentation/Opening%20Keynote:%20Dart,%20a%20new%20programming%20language%20for%20structured%20web%20programming | titel=Opening Keynote: Dart, a new programming language for structured web programming | autor=Gilad Bracha, Lars Bak | hrsg=goto Aarhus 2011 International Software Developer Conference | datum=2011-10-10 | zugriff=2011-10-15 | sprache=en}}

Hintergrund

Dart (vormals Dash) wurde mit dem Ziel entworfen, eine neue, offene und moderne Alternative zu JavaScript als hauptsächlich verwendete Skriptsprache in Webbrowsern zu etablieren.{{Internetquelle | url=http://news.cnet.com/8301-30685_3-20117924-264/google-debuts-dart-a-javascript-alternative/ | titel=Google debuts Dart, a JavaScript alternative | autor=Stephen Shankland | hrsg=CNET | datum=10. Oktober 2011 | zugriff=2011-10-15 | sprache=en | zitat="It's not going to replace JavaScript" }} Dabei soll Dart einige grundsätzliche Probleme von JavaScript überwinden{{Internetquelle | url=http://dartvader.grobmeier.de/10-punkte-in-denen-dart-javascript-ubertrifft-12012012.html | titel=10 Punkte, in denen Dart JavaScript übertrifft| autor=Christian Grobmeier | datum=2012-01-12 | zugriff=2012-01-12 | sprache=de}}, die sich nach Ansicht der Entwickler von Dart nicht durch eine Weiterentwicklung von JavaScript beheben ließen. Weitere Ziele, die mit der Implementierung verfolgt werden, sind eine höhere Ausführungsgeschwindigkeit, bessere Verwendbarkeit für große Projekte und bessere Sicherheitsmerkmale. Dabei sollen die als positiv eingeschätzten Aspekte von JavaScript beibehalten werden.

Laufzeitumgebung

Dart-Programme können im Browser, aber auch auf dem Server ausgeführt werden. Im Browser wird derzeit die Verwendung eines Transcompilers empfohlen, wie DartC oder Frog. DartC ist eine veraltete Fassung des Compilers, der große Mengen an JavaScript generiert. Die neue Fassung des Compilers namens Frog generiert besseren JavaScript-Code und ist selbst auch in Dart geschrieben (im Gegensatz zu Java bei DartC).

Derzeit wird an Dartium gearbeitet, eine Chrome-Version, die Dart nativ unterstützen soll.{{Internetquelle | url=http://code.google.com/p/dart/wiki/BuildingDartium | titel=Building Dartium| autor=Google Dart Team | datum=2012-01-12 | zugriff=2012-01-12 | sprache=de}} Des Weiteren wird an einem WebKit-Entwicklungszweig gearbeitet, der allerdings kontrovers diskutiert wird.{{Internetquelle | url=http://dartvader.grobmeier.de/google-dart-bald-native-auf-webkit-08122011.html | titel=Google Dart – bald native auf WebKit?| autor=Christian Grobmeier | datum=2011-12-08 | zugriff=2012-01-12 | sprache=de}} Es ist noch kein Termin bekannt, zu dem Chrome oder ein anderer Browser Dart nativ unterstützen soll.

Dart-Anwendungen werden mit einem eigenen Mimetype ausgeliefert werden, nämlich "application/vnd.dart".{{Internetquelle | url=http://www.iana.org/assignments/media-types/application/vnd-dart | titel=IANA Dart Media Type| autor=IANA | datum=2012-01-12 | zugriff=2012-01-12 | sprache=de}}

Das Dart SDK zur server-seitigen Entwicklung kann bereits bezogen oder selbst kompiliert werden. Allerdings ist auch hier noch kein offizieller Erscheinungstermin einer stable Version bekannt.

Entwicklungsziele

Die Entwicklung von Dart wird von folgenden Zielen geleitet:{{Internetquelle | url=http://www.dartlang.org/docs/technical-overview/index.html#goals | titel=Dart Design Goals | zugriff=2011-10-15 | sprache=en }}
* Entwicklung einer strukturierten, aber auch flexiblen Programmiersprache für das Web.
* Entwicklung einer leicht erlernbaren, da auf für Programmierer vertrauten Syntax und Techniken beruhenden, Programmiersprache.
* Sicherstellung, dass alle Sprachkonstrukte eine hohe Leistung und einen schnellen Programmstart ermöglichen
* Dart sollte vor allem für Geräte geeignet sein, die mit dem Web kommunizieren, wie Telefone, Tablets, Laptops und auch Server.

* Unterstützung durch Tools, mit deren Hilfe Dart auf allen gängigen Webbrowsern lauffähig ist.

Beispiele


Hello World



main() {
// Ausgabe der Textzeile "Hallo, Wikipedia!"
print('Hallo, Wikipedia!');
}

Objektorientierte Programmierung



// defining a class
class Point {
Point(num this.x, num this.y); // a constructor with syntactic sugar
distanceTo(Point other) { // a method
methodCalls++;
num dx = x - other.x;
num dy = y - other.y;
return Math.sqrt(dx * dx + dy * dy);
}
num x, y; // member variables
static int methodCalls = 0; // a class-wide variable

}

// defining a subclass
class ColorPoint extends Point {
ColorPoint(x, y, color) {
this.x = x;
this.y = y;
this.color = color;
}
var color;

}

main() {
Point p = new Point(2, 3);
Point q = new ColorPoint (3, 4, 'red');
print('distance from p to q = ${p.distanceTo(q)}');
print('method calls = ' + Point.methodCalls);
}

Weblinks


* [http://www.dartlang.org/ Offizielle Website]
* [http://it-republik.de/php/artikel/Google-Dart---Mitten-ins-Schwarze-4366.html Google Dart - Mitten ins Schwarze. Eine Einführung in Dart im PHP Magazin von Christian Grobmeier]
* [http://www.infoq.com/news/2011/10/google-dart-language Infoq: Google Dart Language and Tools Announced - Dynamic Language, Optionally Typed, Familiar Syntax]
* [http://www.heise.de/developer/artikel/Dart-Googles-neue-Programmiersprache-1358408.html Googles neue Programmiersprache bei Heise Developer]

* [http://it-republik.de/jaxenter/artikel/Google-Dart-4121.html Google Dart] Artikel aus dem Java Magazin

Quellen


Kategorie:Programmiersprache
Kategorie:Google

Kategorie:Web-Entwicklung

ar:دارت (لغة برمجة)
Dart (programming language)
es:Dart
fa:دارت (زبان برنامه‌نویسی)
fi:Dart (ohjelmointikieli)
Dart (langage informatique)
hu:Dart (programozási nyelv)
it:DART (linguaggio)
ja:Dart
ko:DART (프로그래밍 언어)
pl:DART (język programowania)
pt:Dart (linguagem de programação)
ru:Dart
sv:Dart (programspråk)
vi:Dart (ngôn ngữ lập trình)
zh:Dart

weiter

Text und Bilder dieses Beitrags stammen aus dem Artikel Dart (Programmiersprache) der freien Enzyklopädie Wikipedia und stehen unter der GNU Free Documentation License. Die Liste der Autoren ist in der Wikipedia unter dieser Seite verfügbar, der Original-Artikel lässt sich hier bearbeiten.