software.wikisort.org - Язык_программирования

Search / Calendar

Dart — язык программирования, созданный Google. Dart позиционируется в качестве замены/альтернативы JavaScript. Один из разработчиков языка Марк Миллер (Mark S. Miller) написал, что JavaScript «имеет фундаментальные изъяны»[2] («Javascript has fundamental flaws…»), которые невозможно исправить. Поэтому и был создан Dart.

Dart
Класс языка объектно-ориентированный язык программирования, веб-фреймворк, сценарный язык, императивный язык программирования, reflective programming language[d], язык функционального программирования и мультипарадигмальный язык программирования
Тип исполнения компилятор
Появился в 10 октября 2011
Автор Google
Разработчик Google
Расширение файлов .dart
Выпуск 2.17.6 (13 июля 2022 года)[1]
Система типов статическая с версии Dart 2
Испытал влияние C, Java, JavaScript, CoffeeScript, Go
Лицензия BSD
Сайт dart.dev
Платформа кроссплатформенность
 Медиафайлы на Викискладе

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

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

Изначально было предложено два способа исполнения Dart-программ: с использованием виртуальной машины (в поддерживающих язык браузерах) или с промежуточной трансляцией в javascript (универсальный)[4][5].

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

4 июля 2014 года ECMA одобрили первую редакцию стандарта языка, стандарт получил название ECMA-408[6].

В феврале 2018 года Google выпустила обновленную версию языка — Dart 2.0[7][8]. В язык добавлена строгая статическая типизация и новый компилятор для разработки dartdevc.


Пример


Простое приложение, выводящее надпись Hello, world!:

void 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);
}

См. также



Примечания


  1. Dart SDK archive. Дата обращения: 1 мая 2022. Архивировано 12 февраля 2022 года.
  2. Первое сообщение при создании языка. Дата обращения: 14 декабря 2015. Архивировано 28 октября 2015 года.
  3. Keynote: Dart, a new programming language for structured web programming. Дата обращения: 12 сентября 2011. Архивировано 25 июля 2014 года.
  4. Dart: a language for structured web programming Архивная копия от 13 июля 2016 на Wayback Machine, The official Google Code blog 2011-10
  5. Язык Dart — Structured web programming Архивная копия от 21 ноября 2016 на Wayback Machine, Хабрахабр, 2011 — перевод Dart Technical Overview
  6. Ecma approves the 1st edition of the Dart language specification (англ.). dartlang.org (4 июля 2014). Дата обращения: 6 августа 2014. Архивировано 24 апреля 2015 года.
  7. Anders Thorhauge Sandholm. Announcing Dart 2: Optimized for Client-Side Development (англ.). Medium (22 февраля 2018). Дата обращения: 9 сентября 2021. Архивировано 31 июля 2018 года.
  8. Dart 2 migration guide. dart.dev. Дата обращения: 9 сентября 2021.

Литература


На русском
На английском

Ссылки





Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.org внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2025
WikiSort.org - проект по пересортировке и дополнению контента Википедии