Dart

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Dart
Тип исполнения:

интерпретатор

Появился в:

10 октября 2011

Автор(ы):

Google

Релиз:

1.5.3 (4 июля 2014)

Испытал влияние:

Java, JavaScript, CoffeeScript, Go

Лицензия

BSD

Сайт:

http://www.dartlang.org

Dart — язык программирования, созданный Google. Dart позиционируется в качестве замены/альтернативы JavaScript, страдающего от «фундаментальных» изъянов, которые невозможно исправить путём эволюционного развития.

Первая общедоступная информация об этом языке программирования появилась 12 сентября 2011 года на конференции разработчиков Goto[1]. 10 октября 2011 была проведена официальная презентация языка Google Dart.

Задачи, поставленные перед разработчиками языка:[2]

  • Создать структурированный и в то же время гибкий язык для веб-программирования
  • Сделать язык похожим на существующие для упрощения обучения
  • Высокая производительность получаемых программ как в браузерах, так и в иных окружениях, начиная от смартфонов и заканчивая серверами.

В настоящее время предполагается два способа исполнения Dart-программ: с использованием виртуальной машины или с промежуточной трансляцией в javascript.[2]

15 ноября 2013 года Google выпустили первую стабильную версию своего языка программирования — Dart SDK 1.0 .

Пример[править | править вики-текст]

Hello, world!:

main() {
    print('Hello World!');
}

Функция для расчета n-ого числа Фибоначчи:

int fib(int n) {
    return (n <= 1) ? 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 в действии = 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

Ссылки[править | править вики-текст]