Мудрость единственный клад, которому не требуется тайник

Дочь учится на повара. Мать: ...

В ночные сборки Firefox добавлена поддержка Wayland
Sat, 17 Nov 2018 12:19:38 +0300

Amazon выпустил Corretto, дистрибутив OpenJDK с длительным сроком поддержки
Fri, 16 Nov 2018 21:56:19 +0300

Время поддержки Ubuntu 18.04 увеличено до 10 лет
Thu, 15 Nov 2018 22:28:55 +0300

Представлена новая плата Raspberry Pi 3 Model A+
Thu, 15 Nov 2018 12:31:03 +0300

Подведены итоги выборов технического совета Linux Foundation
Thu, 15 Nov 2018 09:18:07 +0300

Debian запрещает использование в пакетах секции со специфичными для вендоров патчами
Wed, 14 Nov 2018 09:03:34 +0300

В Chrome развивается API для создания полноценных пользовательских приложений
Mon, 12 Nov 2018 23:58:04 +0300

Mozilla тестирует в Firefox две новые возможности: Price Wise и Email Tabs
Mon, 12 Nov 2018 21:15:57 +0300

Red Hat перевёл проект Ceph под покровительство Linux Foundation
Mon, 12 Nov 2018 18:26:46 +0300

HTTP поверх протокола QUIC будет стандартизирован как HTTP/3
Mon, 12 Nov 2018 08:27:27 +0300

Опубликован стандарт параллельного программирования OpenMP 5.0
Fri, 09 Nov 2018 10:49:14 +0300

Свободный проект Manuel Bastioni Laboratory закрывается
Fri, 09 Nov 2018 10:11:44 +0300

Samsung опубликовал Linux-окружение для смартфонов и планшетов с адаптером DeX
Fri, 09 Nov 2018 08:33:53 +0300

GitHub преодолел рубеж в 100 млн репозиториев
Thu, 08 Nov 2018 19:13:13 +0300

В Firefox тестируют поддержку сохранения в облачные хранилища
Thu, 08 Nov 2018 11:32:23 +0300

Новости OPENNET
Новости

Увидел свет релиз языка программирования Dart 2. Dart 2 является не столько новой значительной веткой, сколько общим переосмыслением целей и задач проекта. Разработчики видят Dart 2 в качестве языка для Web и мобильных систем, оптимизированного для разработки компонентов, выполняемых на стороне клиента.

Dart 2 отличается от изначального варианта языка 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, на основе которого также построена пользовательская оболочка развиваемой в Google новой микроядерной операционной системы Fuchsia. Для разработки для Web реализован набор специфичных библиотек, таких как dart:html, а также web-фреймворк Angular. Также продвигается возможность создавать однородные системы, использующие единую общую кодовую базу, при разработке приложений для Android, iOS и Web. Например, в мобильных приложениях и Web-интерфейсах AdWords Express и AppTree совместно используется от 50% до 70% общего кода.

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

    Привычный и простой для изучения синтаксис, естественный для программистов на JavaScript, Си и Java.
  • Обеспечение быстрого запуска и высокой производительности для всех современных web-браузеров и различных типов окружений, от портативных устройств до мощных серверов;
  • Возможность определения классов и интерфейсов, позволяющих использовать инкапсуляцию и повторно использовать существующие методы и данные;
  • Указание типов позволяет упростить отладку и выявление ошибок, делает код более ясным и читаемым, упрощает его доработку и анализ сторонними разработчиками.
  • Среди поддерживаемых типов: различные виды хэшей, массивов и списков, очереди, числовые и строковые типы, типы для определения даты и времени, регулярные выражения (RegExp). Возможно создание своих типов;
  • Для организации параллельного выполнения предлагается использовать классы с атрибутом isolate, код которых выполняется полностью в изолированном пространстве в отдельной области памяти, взаимодействуя с основным процессом через отправку сообщений;
  • Поддержка использования библиотек, упрощающих поддержку и отладку больших web-проектов. Сторонние реализации функций могут подключаться в виде разделяемых библиотек. Приложения можно разбить на части и поручить разработку каждой из частей отдельной команде программистов;
  • Набор готовых инструментов для поддержки разработки на языке Dart, включая реализацию средств динамической разработки и отладки с исправлением кода на лету ("edit-and-continue");
  • Для упрощения разработки на языке Dart поставляется SDK, пакетный менеджер pub, статический анализатор кода dart_analyzer, набор библиотек, интегрированная среда разработки DartPad и плагины с поддержкой Dart для IntelliJ IDEA, WebStorm, Emacs, Sublime Text 2 и Vim;
  • Дополнительные пакеты с библиотеками и утилитами распространяются через репозиторий pub, который насчитывает более 3 тысяч пакетов.

0 0

НОВОСТИ: Итоги полугода работы проекта Repology, анализирующего информаци ... Thu, 15 Nov 2018 21:21:32 +0300

Прошли очередные полгода и проект Repology, в рамках которого регулярно собирается и сравнивается информация о версиях пакетов во множестве репозиториев, публикует очередной отчёт.

???????@Mail.ru Opera Firefox INFOBOX - хостинг Google Chrome