Google, Microsoft, Mozilla придумали веб нового типа. Скорость загрузки сайтов возрастет в 20 раз
Google, Microsoft и Mozilla решили создать новый веб-стандарт, который позволит писать код сайтов на C/C++ и других языках и компилировать их в бинарный исполняемый файл сайта. Нововведение позволит в десятки раз увеличить скорость загрузки страниц.
Google, Microsoft, Mozilla совместно с сообществом разработчиков открытого движка WebKit объявили о начале разработки бинарного формата WebAssembly, который позволит делать сайты в виде исполняемых приложений, состоящих из бинарного кода. Об этом участники проекта сообщили на сайте Webkit.org.
Сайты в виде исполняемых приложений — первая задача проекта.
Вторая задача - создание нового низкоуровневего исполняемого кода для выполнения в браузере приложений, как замены распространенному языку JavaScript. Предполагается, что с помощью WebAssembly разработчики смогут создавать исполняемые части сайте не только при помощи JavaScript, но и на C/C++, Rust, Go, C# и на других языках, просто компилируя исходный код в исполняемый файл сайта.
Сейчас программы на JavaScript представляют собой простые текстовые файлы, которые при открытии страницы загружаются с веб-сервера на компьютер пользователя, после чего JavaScript-движок браузера выполняет интерпретацию их команд. Этот процесс занимает много времени, и поэтому некоторые разработчики придумали способы его оптимизации — Mozilla анонсировала проект Asm.js, а Google — Native Client. Оба проекта призваны реализовать возможность запуска исполняемого кода в веб-браузере, но они медленно развиваются. Не исключено, что WebAssembly первым прийдет к финишу, считает TechCrunch.
Более того, WebAssembly обещает предложить еще более высокую скорость декодирования бинарного файла — в 23 раза выше, чем Asm.js, предполагают разработчики.
Google, Microsoft, Mozilla придумали исполняемые веб-сайты на бинарном коде
Высокая скорость работы — не единственное преимущество нового стандарта над последовательной компиляцией JavaScript-кода. Бинарный код легче сжимается. Таким образом, переход на новый формат позволит снизить нагрузку на сеть и увеличить скорость доставки веб-файлов в браузер.
На первоначальном этапе в WebAssembly планируется добавить поддержку языков C/C++. И для компиляции кода разработчикам будет предложен Emscripten — тот же инструмент, который сейчас используется в рамках проекта Asm.js для компиляции C/C++ в JavaScript.
На начальном этапе авторы также планируют выпустить библиотеку polyfill, которая позволит конвертировать код WebAssembly в код JavaScript. Это позволит запускать его в любых браузерах, включая те, которые не обладают встроенной поддержкой нового стандарта. Со временем разработчикам планируется предоставить большее количество инструментов, включая компиляторы и отладчики, а также добавить поддержку новых языков программирования.
По мнению создателя JavaScript Брендена Айка (Brendan Eich) — который недолго пробыл генеральным директором Mozilla — после того как все основные браузеры получат поддержку WebAssembly, между WebAssembly и JavaScript произойдет раскол. Однако авторы стандарта подчеркивают, что задача нового стандарта — не заменить JavaScript, а лишь предоставить возможность компиляции кода для веб-сайтов, написанном на большем количестве языках.
Google, Microsoft, Mozilla совместно с сообществом разработчиков открытого движка WebKit объявили о начале разработки бинарного формата WebAssembly, который позволит делать сайты в виде исполняемых приложений, состоящих из бинарного кода. Об этом участники проекта сообщили на сайте Webkit.org.
Сайты в виде исполняемых приложений — первая задача проекта.
Вторая задача - создание нового низкоуровневего исполняемого кода для выполнения в браузере приложений, как замены распространенному языку JavaScript. Предполагается, что с помощью WebAssembly разработчики смогут создавать исполняемые части сайте не только при помощи JavaScript, но и на C/C++, Rust, Go, C# и на других языках, просто компилируя исходный код в исполняемый файл сайта.
Сейчас программы на JavaScript представляют собой простые текстовые файлы, которые при открытии страницы загружаются с веб-сервера на компьютер пользователя, после чего JavaScript-движок браузера выполняет интерпретацию их команд. Этот процесс занимает много времени, и поэтому некоторые разработчики придумали способы его оптимизации — Mozilla анонсировала проект Asm.js, а Google — Native Client. Оба проекта призваны реализовать возможность запуска исполняемого кода в веб-браузере, но они медленно развиваются. Не исключено, что WebAssembly первым прийдет к финишу, считает TechCrunch.
Более того, WebAssembly обещает предложить еще более высокую скорость декодирования бинарного файла — в 23 раза выше, чем Asm.js, предполагают разработчики.
Google, Microsoft, Mozilla придумали исполняемые веб-сайты на бинарном коде
Высокая скорость работы — не единственное преимущество нового стандарта над последовательной компиляцией JavaScript-кода. Бинарный код легче сжимается. Таким образом, переход на новый формат позволит снизить нагрузку на сеть и увеличить скорость доставки веб-файлов в браузер.
На первоначальном этапе в WebAssembly планируется добавить поддержку языков C/C++. И для компиляции кода разработчикам будет предложен Emscripten — тот же инструмент, который сейчас используется в рамках проекта Asm.js для компиляции C/C++ в JavaScript.
На начальном этапе авторы также планируют выпустить библиотеку polyfill, которая позволит конвертировать код WebAssembly в код JavaScript. Это позволит запускать его в любых браузерах, включая те, которые не обладают встроенной поддержкой нового стандарта. Со временем разработчикам планируется предоставить большее количество инструментов, включая компиляторы и отладчики, а также добавить поддержку новых языков программирования.
По мнению создателя JavaScript Брендена Айка (Brendan Eich) — который недолго пробыл генеральным директором Mozilla — после того как все основные браузеры получат поддержку WebAssembly, между WebAssembly и JavaScript произойдет раскол. Однако авторы стандарта подчеркивают, что задача нового стандарта — не заменить JavaScript, а лишь предоставить возможность компиляции кода для веб-сайтов, написанном на большем количестве языках.
Ещё новости по теме:
18:20