Dart
Тип исполнения: |
интерпретатор |
---|---|
Появился в: | |
Автор: | |
Выпуск: |
1.19 (26 августа 2016) |
Испытал влияние: | |
Лицензия: | |
Сайт: |
[www.dartlang.org tlang.org] |
Dart — язык программирования, созданный Google. Dart позиционируется в качестве замены/альтернативы JavaScript. Один из разработчиков языка Марк Миллер (Mark S. Miller) написал, что JavaScript «имеет фундаментальные изъяны»[1] («Javascript has fundamental flaws...»), которые невозможно исправить. Поэтому и был создан Dart.
Первая общедоступная информация об этом языке программирования появилась 12 сентября 2011 года на конференции разработчиков Goto[2]. 10 октября 2011 была проведена официальная презентация языка Google Dart.
Задачи, поставленные перед разработчиками языка:[3]
- Создать структурированный и в то же время гибкий язык для веб-программирования
- Сделать язык похожим на существующие для упрощения обучения
- Высокая производительность получаемых программ как в браузерах, так и в иных окружениях, начиная от смартфонов и заканчивая серверами.
В настоящее время предполагается два способа исполнения Dart-программ: с использованием виртуальной машины или с промежуточной трансляцией в javascript[3].
15 ноября 2013 года Google выпустили первую стабильную версию своего языка программирования — Dart SDK 1.0 .
4 июля 2014 года ECMA одобрили первую редакцию стандарта языка, стандарт получил название [www.ecma-international.org/publications/standards/Ecma-408.htm ECMA-408][4].
Содержание
Пример
main() {
print('Hello World!');
}
Функция для расчета n-го числа Фибоначчи:
int fib(int n) {
return (n <= 2) ? 1 : (fib(n - 1) + fib(n - 2));
}
main() {
print('fib(20) = ${fib(20)}');
}
Простой класс:
// Подключить библиотеку math для доступа к функции sqrt()
import 'dart:math' as math;
// Создание класса Point
class Point {
// Переменные, объявленные как final, не могут быть изменены после инициализации
// Объявление двух числовых полей
final num x, y;
// Конструктор c "синтаксическим сахаром", инициализирующий поля объекта значениями аргументов
Point(this.x, this.y);
// Именованный конструктор со списком инициализации по умолчанию
Point.origin() : x = 0, y = 0;
// Метод класса
num distanceTo(Point other) {
var dx = x - other.x;
var dy = y - other.y;
return math.sqrt(dx * dx + dy * dy);
}
}
// Все программы на Dart начинают выполнение с функции main()
main() {
// Создание двух объектов класса Point
var p1 = new Point(10, 10);
var p2 = new Point.origin();
var distance = p1.distanceTo(p2);
print(distance);
}
См. также
Напишите отзыв о статье "Dart"
Примечания
- ↑ [gist.github.com/paulmillr/1208618 Первое сообщение при создании языка]
- ↑ [gotocon.com/aarhus-2011/presentation/Opening Keynote: Dart, a new programming language for structured web programming]
- ↑ 1 2 [googlecode.blogspot.com/2011/10/dart-language-for-structured-web.html Dart: a language for structured web programming — The official Google Code blog]
- ↑ [news.dartlang.org/2014/07/ecma-approves-1st-edition-of-dart.html Ecma approves the 1st edition of the Dart language specification] (4 июля 2014).
Литература
- На русском
- Крис Бакетт. Dart в действии = Dart in Action / ред. Д. Мовчан. — ДМК Пресс, 2013. — 528 с. — ISBN 978-1-6172-9086-2, 978-5-94074-918-9.
- На английском
- Matt Fisher. 8. Exporting to HTML5, Google Dart // HTML5 for Flash Developers. — Packt Publishing, Limited, 2013. — 322 p. — ISBN 9781849693325.
- Walrath, K. and Ladd, S. Dart: Up and Running. — O'Reilly, 2012. — 152 p. — ISBN 9781449330897.
- Chris Buckett. Dart in Action. — O'Reilly, 2013. — 424 p. — ISBN 9781617290862.
- Walrath, K. and Ladd, S. What is Dart?. — O'Reilly Media, 2012. — 20 p. — ISBN 9781449332334.
Ссылки
- [dart.org.ru/ Русскоязычный портал по Dart]
- [habrahabr.ru/post/130064/ Язык Dart — Structured web programming]
- [dartdot.ru/ Русская документация по API Dart, новости, статьи]
Это заготовка статьи о компьютерных языках. Вы можете помочь проекту, дополнив её. |
Отрывок, характеризующий Dart
Прежде Пьер в присутствии Анны Павловны постоянно чувствовал, что то, что он говорит, неприлично, бестактно, не то, что нужно; что речи его, кажущиеся ему умными, пока он готовит их в своем воображении, делаются глупыми, как скоро он громко выговорит, и что, напротив, самые тупые речи Ипполита выходят умными и милыми. Теперь всё, что ни говорил он, всё выходило charmant [очаровательно]. Ежели даже Анна Павловна не говорила этого, то он видел, что ей хотелось это сказать, и она только, в уважение его скромности, воздерживалась от этого.В начале зимы с 1805 на 1806 год Пьер получил от Анны Павловны обычную розовую записку с приглашением, в котором было прибавлено: «Vous trouverez chez moi la belle Helene, qu'on ne se lasse jamais de voir». [у меня будет прекрасная Элен, на которую никогда не устанешь любоваться.]
Читая это место, Пьер в первый раз почувствовал, что между ним и Элен образовалась какая то связь, признаваемая другими людьми, и эта мысль в одно и то же время и испугала его, как будто на него накладывалось обязательство, которое он не мог сдержать, и вместе понравилась ему, как забавное предположение.
Вечер Анны Павловны был такой же, как и первый, только новинкой, которою угощала Анна Павловна своих гостей, был теперь не Мортемар, а дипломат, приехавший из Берлина и привезший самые свежие подробности о пребывании государя Александра в Потсдаме и о том, как два высочайшие друга поклялись там в неразрывном союзе отстаивать правое дело против врага человеческого рода. Пьер был принят Анной Павловной с оттенком грусти, относившейся, очевидно, к свежей потере, постигшей молодого человека, к смерти графа Безухого (все постоянно считали долгом уверять Пьера, что он очень огорчен кончиною отца, которого он почти не знал), – и грусти точно такой же, как и та высочайшая грусть, которая выражалась при упоминаниях об августейшей императрице Марии Феодоровне. Пьер почувствовал себя польщенным этим. Анна Павловна с своим обычным искусством устроила кружки своей гостиной. Большой кружок, где были князь Василий и генералы, пользовался дипломатом. Другой кружок был у чайного столика. Пьер хотел присоединиться к первому, но Анна Павловна, находившаяся в раздраженном состоянии полководца на поле битвы, когда приходят тысячи новых блестящих мыслей, которые едва успеваешь приводить в исполнение, Анна Павловна, увидев Пьера, тронула его пальцем за рукав.
– Attendez, j'ai des vues sur vous pour ce soir. [У меня есть на вас виды в этот вечер.] Она взглянула на Элен и улыбнулась ей. – Ma bonne Helene, il faut, que vous soyez charitable pour ma рauvre tante, qui a une adoration pour vous. Allez lui tenir compagnie pour 10 minutes. [Моя милая Элен, надо, чтобы вы были сострадательны к моей бедной тетке, которая питает к вам обожание. Побудьте с ней минут 10.] А чтоб вам не очень скучно было, вот вам милый граф, который не откажется за вами следовать.
Красавица направилась к тетушке, но Пьера Анна Павловна еще удержала подле себя, показывая вид, как будто ей надо сделать еще последнее необходимое распоряжение.
– Не правда ли, она восхитительна? – сказала она Пьеру, указывая на отплывающую величавую красавицу. – Et quelle tenue! [И как держит себя!] Для такой молодой девушки и такой такт, такое мастерское уменье держать себя! Это происходит от сердца! Счастлив будет тот, чьей она будет! С нею самый несветский муж будет невольно занимать самое блестящее место в свете. Не правда ли? Я только хотела знать ваше мнение, – и Анна Павловна отпустила Пьера.
Пьер с искренностью отвечал Анне Павловне утвердительно на вопрос ее об искусстве Элен держать себя. Ежели он когда нибудь думал об Элен, то думал именно о ее красоте и о том не обыкновенном ее спокойном уменьи быть молчаливо достойною в свете.
Тетушка приняла в свой уголок двух молодых людей, но, казалось, желала скрыть свое обожание к Элен и желала более выразить страх перед Анной Павловной. Она взглядывала на племянницу, как бы спрашивая, что ей делать с этими людьми. Отходя от них, Анна Павловна опять тронула пальчиком рукав Пьера и проговорила: