The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]



"Выпуск языка программирования Dart 2.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск языка программирования Dart 2.0"  +/
Сообщение от opennews (?), 07-Авг-18, 23:12 
Увидел свет (https://medium.com/dartlang/dart-2-stable-and-the-dart-web-p...) релиз языка программирования Dart 2 (https://www.dartlang.org/dart-2). Dart 2 является не столько новой значительной веткой, сколько общим переосмыслением целей и задач проекта. Разработчики видят Dart 2 в качестве языка для Web и мобильных систем, оптимизированного для разработки компонентов, выполняемых на стороне клиента.


Dart 2 отличается (https://www.dartlang.org/dart-2)  от изначального варианта (https://www.opennet.ru/opennews/art.shtml?num=38432) языка Dart кардинальным изменением подхода к типизации. Если в Dart 1.x определение типов было необязательным и разработчик мог удалить все аннотации типов без влияния на поведение приложения, то в Dart 2 применена строгая статическая типизация, но при этом типы могут выводиться автоматически и аннотации типов по прежнему не являются обязательными. Например, при указании "var i = 1" в  Dart 2 для переменной "i" будет выведен тип int, в то время как в Dart 1 в этому случае была бы использована динамическая типизация (тип dynamic).


В Dart 2 поддержка режима "checked", при котором выполняются ограниченные проверки типов, будет прекращена, его место займёт режим "strong", обеспечивающий  строгую проверку всех типов. Для упрощения подготовки к переходу на Dart 2 в  Dart 1.x также добавлен режим "strong", при выборе которого поведение по использованию типов приближено к Dart 2. Строгая типизация позволяет обеспечить быструю компиляцию в JavaScript при помощи  компилятора dartdevc без необходимости применения специальных виртуальных машин. Вместо
Dartium, сборки браузера Chromium с Dart VM, для тестирования приложений отныне предлагается использовать компиляцию в JavaScript и любые штатные браузеры.


Из изменений Dart 2 также можно отметить проведение чистки синтаксиса и переработку многих инструментов, которые теперь нацелены на предоставление удобных и эффективных возможностей для web-разработки и создания мобильных приложений. Вместо применения отдельного языка разметки для компоновки элементов интерфейса в Dart 2 представлена возможность определять виджеты для интерфейса без обязательного использования ключевых слов new и const. Например:

// В Dart 1.x:
Widget build(BuildContext context) {
  return new Container(
    height: 56.0,
    padding: const EdgeInsets.symmetric(horizontal: 8.0),
    decoration: new BoxDecoration(color: Colors.blue[500]),
    child: new Row(
      ...
    ),
  );
}

// В Dart 2:
Widget build(BuildContext context) =>
  Container(
    height: 56.0,
    padding: EdgeInsets.symmetric(horizontal: 8.0),
    decoration: BoxDecoration(color: Colors.blue[500]),
    child: Row(
      ...
    ),
);

Для создания мобильных приложений предлагается использовать фреймворк Flutter (https://flutter.io/), на основе которого также построена  пользовательская оболочка развиваемой в Google новой микроядерной операционной системы Fuchsia (https://www.opennet.ru/opennews/art.shtml?num=46517). Для разработки для Web реализован (https://webdev.dartlang.org/) набор специфичных библиотек, таких как dart:html, а также web-фреймворк Angular. Также продвигается возможность создавать однородные системы, использующие единую общую кодовую базу, при разработке приложений для Android, iOS и Web.  Например, в мобильных приложениях и Web-интерфейсах AdWords Express и  AppTree  совместно используется от 50% до 70% общего кода.

Особенности языка Dart:

-  Привычный и простой для изучения синтаксис, естественный для программистов на JavaScript, Си и Java.

-  Обеспечение быстрого запуска и высокой производительности для всех современных web-браузеров и различных типов окружений, от портативных устройств до мощных серверов;

-  Возможность определения классов и интерфейсов, позволяющих использовать инкапсуляцию и повторно использовать существующие методы и данные;

-   Указание типов позволяет упростить отладку и выявление ошибок, делает код более ясным и читаемым, упрощает его доработку и анализ сторонними разработчиками.

-  Среди поддерживаемых типов: различные виды хэшей, массивов и списков, очереди, числовые и строковые типы, типы для определения даты и времени, регулярные выражения (RegExp). Возможно создание своих (http://www.dartlang.org/articles/optional-types/) типов;


-  Для организации параллельного выполнения предлагается использовать классы с атрибутом isolate, код которых выполняется полностью в изолированном пространстве в отдельной области памяти, взаимодействуя с основным процессом через отправку сообщений;


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

-  Набор готовых инструментов для поддержки разработки на языке Dart, включая реализацию средств динамической разработки и отладки с исправлением кода на лету ("edit-and-continue");

-  Для упрощения разработки на языке Dart поставляется SDK (http://www.dartlang.org/docs/sdk/), пакетный менеджер pub (http://pub.dartlang.org/),  статический анализатор кода dart_analyzer (https://www.dartlang.org/docs/dart-up-and-running/contents/c...), набор библиотек,  интегрированная среда разработки DartPad (https://dartpad.dartlang.org/) и плагины с поддержкой Dart для IntelliJ IDEA, WebStorm (https://www.dartlang.org/tools/webstorm/), Emacs (https://github.com/nex3/dart-mode), Sublime Text 2 (https://github.com/dart-lang/dart-sublime-bundle#readme) и Vim (https://github.com/dart-lang/dart-vim-plugin);

-  Дополнительные пакеты с библиотеками и утилитами распространяются через репозиторий pub (https://pub.dartlang.org/packages), который насчитывает более 3 тысяч пакетов.


URL: https://medium.com/dartlang/dart-2-stable-and-the-dart-web-p...
Новость: https://www.opennet.ru/opennews/art.shtml?num=49096

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


2. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (2), 07-Авг-18, 23:16 
А потом оно сдохнет и весь код придётся переписывать?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Выпуск языка программирования Dart 2.0"  –1 +/
Сообщение от zo0Memail (?), 07-Авг-18, 23:18 
оно еще взлетать не начало (и неизвестно начнет ли вообще), а ты уже хоронишь, осади коней.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

20. "Выпуск языка программирования Dart 2.0"  +2 +/
Сообщение от Аноним (20), 08-Авг-18, 13:00 
Практика показывает, что если сразу не взлетело, то и не взлетит (к примеру сравни C# и D)
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

27. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Питекантроп (?), 08-Авг-18, 16:03 
Руби с тобой не согласен.
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

44. "Выпуск языка программирования Dart 2.0"  +1 +/
Сообщение от Аноним (20), 10-Авг-18, 08:53 
Что это?
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

26. "Выпуск языка программирования Dart 2.0"  +1 +/
Сообщение от Аноним (26), 08-Авг-18, 15:53 
Оно уже сдохло. Точнее сейчас нет практического смысле его применять. Когда Dart появился лет 10 назад он был реально полезен. В него добавили много языковых конструкций, которых не хватало в JS и это было удобно. Сейчас JS 2015 поддерживается повсеместно и в нем есть все то полезное, что добавили в Dart.

В результате сейчас Dart в России используют только во Wrike, больше он никому не нужен (а за бугром он нужен только Гуглу). Если нужно реализовать веб приложение, то проще взять Vue или другой фреймворк. Его проще установить, освоить, к нему будет больше разных дополнительных библиотек, документации и людей, готовых помочь разобраться. С работодателями тоже все сильно лучше.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

33. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (33), 09-Авг-18, 13:10 
В JS нет нормальных миксинов из коробки. Из-за этого приходится делать всякое http://justinfagnani.com/2015/12/21/real-mixins-with-javascr.../ .
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

34. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (34), 09-Авг-18, 14:30 
И не нужно. В js используется композиция вместо этого.
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

4. "Выпуск языка программирования Dart 2.0"  –2 +/
Сообщение от vaider (?), 08-Авг-18, 00:44 
всё также, для того, чтобы хоть что-то с ним делать, нужно ставить левую сборку хромиума? это если не любитель как хипстера "компилить" на каждое изменение?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Выпуск языка программирования Dart 2.0"  +4 +/
Сообщение от Аноним (8), 08-Авг-18, 02:28 
> как хипстера "компилить" на каждое изменение?

C++/C/Java-прогеры у вас внезапно все хипстеры. Ибо компилят каждое изменение

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

12. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (12), 08-Авг-18, 09:57 
Так все верно. А ненавистники хипстеров пишут портянки на баше.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

13. "Выпуск языка программирования Dart 2.0"  +3 +/
Сообщение от Ан (??), 08-Авг-18, 10:23 
Который(баш) написан на C хипстерами. :D
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

31. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (12), 09-Авг-18, 02:58 
Ты фотографии хакеров из семидесятых видел? В особенности всяких там столлманов. Хиппари и хипстеры. Это сегодня из них песок сыплется, а в свое время это были огого горячие финские парни. Хипстеры рулят, а олд-пердYны пишут баш-портянки, чтобы не переходить на хипстерский системдэ.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

39. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от vaider (?), 10-Авг-18, 01:28 
> Хипстеры рулят

в кювет

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

40. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от vaider (?), 10-Авг-18, 01:31 
> Хиппари и хипстеры
> хипстеры

чё прям с айфонами, молескинами, смузями и иконой джобса на груди? а гироскутеры тоже есть на фото?

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

29. "Выпуск языка программирования Dart 2.0"  –2 +/
Сообщение от vaider (?), 08-Авг-18, 18:18 
а тема эта конечно про C++/C/Java

заметил, что хипстеры не умеют в контекст. у них или а или б. или чёрное или белое. ну вобщем туповаты

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

30. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (30), 08-Авг-18, 19:03 
Причём здесь контекст? Вы отнесли к хипстерсту компиляцию на каждое изменение, хотя ничего плохого в этом нет
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

38. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от vaider (?), 10-Авг-18, 01:28 
лол. говорю же: туповаты
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

41. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (41), 10-Авг-18, 03:56 
Просто тут различий нет, что такая компиляция, что другая. Ну в разные языки, а так разницы нет. Так что вот вы необоснованно сейчас бочку катите
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

46. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от vaider (?), 10-Авг-18, 23:30 
погромист на html в треде! все в w3c!
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

42. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (42), 10-Авг-18, 06:01 
Ну необязательно, для них есть REPL)
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

23. "Выпуск языка программирования Dart 2.0"  +2 +/
Сообщение от Аноним (23), 08-Авг-18, 14:39 
Нет, в новости же написано.
>Вместо Dartium, сборки браузера Chromium с Dart VM, для тестирования приложений отныне предлагается использовать компиляцию в JavaScript и любые штатные браузеры.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

14. "Выпуск языка программирования Dart 2.0"  –1 +/
Сообщение от Аноним (14), 08-Авг-18, 10:49 
неужели у языка есть фанбои и они сюда набежали?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

15. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (15), 08-Авг-18, 11:21 
В чем преимущество Dart перед TypeScript?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "Выпуск языка программирования Dart 2.0"  +3 +/
Сообщение от Аноним (18), 08-Авг-18, 12:20 
Ни в чем. Даже есть проблемы. Dart в отличие от TS не совместим с библиотеками на js. А это значит что у него экосистема сильно меньше.
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

21. "Выпуск языка программирования Dart 2.0"  +5 +/
Сообщение от Аноним (21), 08-Авг-18, 13:22 
> Ни в чем. Даже есть проблемы. Dart в отличие от TS не совместим с библиотеками на js. А это значит что у него экосистема сильно меньше.

ИМХО, но это как раз преимущество.

> nikov
> нужно иметь в виду, что система типов TypeScript "deliberately unsound", т.е. гарантий того, что типы сойдутся в runtime, нет. Кроме того, она undecidable, что в компиляторе решается некоторыми произвольными ограничениями на сложность выводимых типов.

В Dart 2.0 судя по все это как раз не так,
то есть после компиляции есть некоторые гарантии.
Чем больше проект тем это важнее.

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

47. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (47), 12-Авг-18, 08:06 
C каких пор наличие доп.библиотек и ресурсов стало недостатоком? Акстись дурень!
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

19. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (20), 08-Авг-18, 12:59 
Этак они и с++ изобретут
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

22. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от IB (?), 08-Авг-18, 14:24 
Компиляторов из C++ в JS/web.asm есть.
Как минимум LLVM - изобретать не нужно.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

28. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от J.L. (?), 08-Авг-18, 16:28 
> Компиляторов из C++ в JS/web.asm есть.
> Как минимум LLVM - изобретать не нужно.

расскажите, пожалуйста, всё, что имеет фронтенд в LLVM, можно скомпилить в JS/web.asm с использованием бекенда LLVM->js ?

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

35. "Выпуск языка программирования Dart 2.0"  +1 +/
Сообщение от Аноним (34), 09-Авг-18, 14:47 
Гугли Emscripten
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

32. "Выпуск языка программирования Dart 2.0"  +1 +/
Сообщение от Аноним (32), 09-Авг-18, 11:43 
Google сделал Dart для всех, но он оказался практически никому не нужен.
Сейчас (уже в который раз) Google пытается найти ему применение.
То есть, нет абсолютно никаких гарантий того, что в один прекрасный момент не будет прекращена разработка Dart.
Кто знает что будет, но Dart реально "не взлетел" из-за отношения разработчиков к членам сообщества.
Сколько раз они делали опросы?
Множество раз.
Сколько раз они получали информацию из этих опросов о потребностях сообщества?
Каждый раз.
Сколько раз они удовлетворили эти потребности (те, что были в приоритете у сообщества)?
НИ РАЗУ.
Может быть они просто издевались многократно когда просили принять участие в своих опросах?
Задайте этот вопрос разработчикам из Google, если это Вас действительно интересует.
Но ответа, мне кажется, не последует.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

36. "Выпуск языка программирования Dart 2.0"  +1 +/
Сообщение от Попугай Кеша (?), 09-Авг-18, 16:14 
Я пишу на Kesha++. Но всем пофиг. То же самое и с Dart )
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

43. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (43), 10-Авг-18, 08:45 
> Я пишу на Kesha++. Но всем пофиг. То же самое и с
> Dart )

Да, на тебя всем пофиг.

Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

45. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Попугай Кеша (?), 10-Авг-18, 14:29 
>> Я пишу на Kesha++. Но всем пофиг. То же самое и с
>> Dart )
> Да, на тебя всем пофиг.

Аааа! О нет! Как же я проживу без твоего мнения? Да пофиг )

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

37. "Выпуск языка программирования Dart 2.0"  +/
Сообщение от Аноним (37), 09-Авг-18, 19:54 
Этот Dart имеет отношение к syndicate?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема


  Закладки на сайте
  Проследить за страницей
Created 1996-2018 by Maxim Chirkov  
ДобавитьПоддержатьВебмастеруГИД  
Hosting by Ihor