Вышла версия 1.0 библиотеки Socket.IO
28 мая библиотека для создания приложений реального времени на Node.js Socket.IO доросла до версии 1.0. Socket.IO возникла практически сразу же после появления Node.js и быстро стала одним из самых популярных и востребованных проектов экосистемы Node. Socket.IO реализует коммуникацию сервера и клиента в реальном времени с помощью Web Sockets, а при отсутствии этого API в старых браузерах эмулирует сокеты с помощью других доступных технологий — сокетов Adobe Flash, запросов AJAX или JSONP.В версии 1.0 окончательно разделены логика работы библиотеки и низкоуровневый движок, реализующий коммуникацию в старых браузерах. Теперь весь код, связанный с этой задачей собран в отдельном модуле Engine.IO. Благодаря этому код Socket.IO стал меньше и чище, упростилось добавление новых видов транспорта, а если разработчик решил положиться только на Web Sockets, то Engine.IO можно вообще не использовать.Socket.IO теперь поддерживает бинарные потоки данных, причём делает это более гибко, чем Web Sockets — типы Buffer, Blob, ArrayBuffer и даже File можно включать в состав передаваемых структур данных. В оригинальных вебсокетах можно только задавать режим использования сокета — бинарный или символьный.
Среди других изменений — усовершенствованная инфраструктура тестирования, улучшенное масштабирование приложений Socket.IO, интеграция с приложениями, написанными на отличных от JavaScript языках, усовершенствованные средства отладки, изменения в API в сторону упрощения и унификации. Подробнее все отличия версии 1.0 описаны в статье в блоге проекта, посвящённой релизу.