Microsoft обнародовала свои планы поддержки библиотеки с открытым исходным кодом jQuery для языка JavaScript. Это важная новость для разработчиков корпорации и важный этап реализации ее программы поддержки открытого ПО.

По заявлению представителей Microsoft, сделанному 28 сентября, компания будет не просто поддерживать библиотеку jQuery, но и со временем распространять ее в составе своего набора инструментов Visual Studio.

Сообщение о поддержке jQuery было сделано менее чем за месяц до конференции разработчиков Microsoft Professional Developers Conference, которая состоялась в Лос-Анджелесе в октябре, что дало возможность предположить, какие новости ожидают участников этого мероприятия.

Как написал в своем блоге вице-президент Microsoft Скотт Гатри, объявляя о поддержке корпорацией jQuery, последняя представляет собой нетребовательную к ресурсам компьютера открытую библиотеку языка JavaScript, которая за сравнительно небольшое время стала одной из самых популярных библиотек в Интернете. Создатель jQuery Джон Ризиг, отвечающий за взаимодействие с разработчиками в организации Mozilla, заявил, что теперь Microsoft присоединилась к длинному списку пользователей jQuery, куда уже входят такие компании, как Google, Intel, IBM, Intuit и Reuters, а 28 сентября пользователем jQuery стала также корпорация Nokia.

Ризиг, которого на конференциях разработчиков открытого ПО встречают словно рок-звезду, пишет в своем блоге: “Microsoft и Nokia сделали важный шаг, включив jQuery в свои официальные платформы разработки приложений. Они будут не только использовать эту библиотеку сами, но и поставлять ее разработчикам в качестве важнейшего элемента своих платформ”.

Более того, Ризиг утверждает следующее: “Microsoft собирается сделать jQuery элементом своей официальной платформы разработки. Сегодня корпорация предлагает для языка JavaScript среду разработки ASP.NET Ajax Framework, которую намерена расширить за счет jQuery. Это означает, что jQuery будет распространяться в составе Visual Studio, куда войдут интеллектуальные средства jQuery, сниппеты, образцы кода и документация.

Microsoft также намерена разрабатывать дополнительные элементы управления, или виджеты, которые будут запускаться поверх jQuery и легко встраиваться в созданные с помощью .NET приложения. Вспомогательные средства jQuery наряду с уже имеющимися войдут также в состав серверных приложений .NET, расширив нынешние возможности ASP.NET AJAX за счет новых функций”.

Рассматривая причины, побудившие Microsoft остановить свой выбор на jQuery, Гатри пишет в блоге: “Привлекательность jQuery в значительной мере связана с тем, что эта библиотека позволяет вам элегантным (и эффективным) способом находить элементы HTML и манипулировать ими, используя минимальное число строк программного кода. jQuery обеспечивает это с помощью прекрасного API-интерфейса. Он предоставляет разработчикам возможность отбирать нужные элементы HTML и управлять ими с помощью команд. Команды jQuery обладают помимо прочего способностью соединяться в цепочки. Результат выполнения одной команды передается на обработку другой. Кроме того, jQuery имеет встроенный набор анимационных API, которые можно применять в качестве команд. Сочетание этих особенностей позволяет вам добиваться прекрасных результатов написанием всего несколько строк кода”.

Microsoft будет распространять библиотеку jQuery “как есть”

Но, наверное, самое важное в сообщении Microsoft, как считает Гатри, заключается в том, что она будет распространять jQuery не только в составе Visual Studio, но и в качестве самостоятельного продукта “как есть”. Корпорация не станет разрабатывать собственный вариант библиотеки или вносить изменения в ее исходный код. Файлы будут по-прежнему использоваться и распространяться в соответствии с условиями действующей лицензии Массачусетского технологического института (MIT).

В скором времени можно будет бесплатно загрузить через Интернет интеллектуальные средства jQuery для поддержки аннотаций, которые, по словам Гатри, прекрасно работают с VS 2008 SP1 и с бесплатным продуктом Visual Web Developer 2008 Express SP1. “Они будут распространяться также в составе нового продукта ASP.NET MVC, в котором библиотека jQuery по умолчанию добавляется во все новые проекты”, — уточнил он.

“Кроме того, в этом году мы распространим техническую поддержку продуктов Microsoft на jQuery, что позволит разработчикам и предприятиям обращаться в Microsoft за помощью 24 часа в сутки 7 дней в неделю”, — добавил Гатри.

“В дальнейшем мы будем использовать jQuery в качестве одной из библиотек, применяемых для высокоуровневого управления в наборе инструментов ASP.NET AJAX Control Toolkit, а также для реализации новых вспомогательных методов серверного компонента AJAX для ASP.NET MVC, — продолжил Гатри. — Новые функции (вроде поддержки нового клиентского шаблона), которые мы включим в ASP.NET AJAX, будут проектироваться также и в расчете на полную интеграцию с jQuery”.

Скотт Хэнсельмен, старший программный менеджер подразделения разработки в Microsoft, написал в своем блоге: “Поддержка jQuery — это прекрасно, потому что мы применяем данную библиотеку в неизменном виде. Она относится к открытому ПО, и мы будем ее использовать и распространять на основе лицензии MIT без каких-либо изменений. Если нам потребуется внести изменения, мы, как и любой другой, выпустим исправление. Позднее в этом году JQuery получит также полную техническую поддержку (Product Support Services, PSS), как и все продукты Microsoft. Утверждалось, будто Microsoft никогда не включит открытое ПО в свою платформу. Я надеюсь, что случай с JQuery — предвестник нашего светлого будущего”.

В интервью еженедельнику eWeek Ризиг заявил: “Следует обратить внимание на еще одно обстоятельство: это первый случай, когда Microsoft предоставляет техническую поддержку проекта, который она сама не разрабатывает, или открытого ПО. Ей очень нравится проект jQuery, и она стремится обеспечить его успех”.

Хэнсельмен добавил к этому следующее: “В Visual Studio 2008 имеется прекрасная поддержка интеллектуальных средств языка JavaScript, которую можно расширить за счет включения комментариев, относящихся к методам из библиотек, созданных другими разработчиками. Сегодня вы можете поискать в Интернете и найти файлы jQuery с поддержкой интеллектуальных средств, скомпонованные сообществом разработчиков. А мы планируем вскоре предложить официальную поддержку интеллектуальных средств jQuery”.

Несмотря на явно выраженное намерение Microsoft поддержать jQuery, не следует ожидать, что Ризиг появится в Редмонде в качестве сотрудника софтверного гиганта. “Я останусь в Mozilla, последние события не отразятся на моем положении в этой организации, — заявил он корреспонденту eWeek. — Microsoft будет просто использовать и поддерживать среду разработки. Мы не станем открыто предлагать свою помощь, во всяком случае, в большем объеме, чем мы предоставляем ее любому другому нашему пользователю (исправление ошибок, повышение производительности). Мы будем точно так же анализировать любые полученные от Microsoft исправления или фрагменты кода, как всегда это делаем, и решать, полезны они для нашего проекта или нет”.

Команда разработчиков jQuery сохраняет бразды правления в своих руках

Действительно, разработчики jQuery по-прежнему полностью контролируют проект. Как отметил Ризиг, они собираются и впредь управлять им в соответствии с пожеланиями всех пользователей. “Мы очень рады, что Microsoft и Nokia решили стать активными участниками сообщества разработчиков”, — добавил он.

По словам Ризига, вклад Microsoft и других участников проекта будет заключаться в написании исправлений, предоставлении сценариев тестирования и проведении полных испытаний в своих средах исполнения. “Любые относящиеся к проекту предложения будут внимательно проанализированы и изучены командой разработчиков jQuery, после чего приняты или отвергнуты в зависимости от их качества и степени полезности. Никому не будет предоставлена полная свобода действий, — написал в своем блоге Ризиг. – В связи с новыми обстоятельствами появится значительное число новых тестов. Тесты для jQuery уже интегрированы в процедуры проверки для браузеров Mozilla и Opera. Теперь же будет добавлено множество тестов для Internet Explorer и WebKit помимо тех, которые уже проводятся разработчиками jQuery”.

Хэнсельмен в своем блоге демонстрирует интеграцию jQuery с ASP.NET AJAX (в том числе с новым движком для создания клиентских шаблонов) и с ADO.NET Data Services (такой компонент, ранее называвшийся Astoria, появился в составе .NET 3.5 SP1).

Относительно Nokia Ризиг пишет: “Nokia стремится использовать jQuery при разработке приложений для своей среды исполнения на основе браузерного движка WebKit. Данная среда представляет собой урезанную версию механизма рендеринга страниц и предоставляет простые, но мощные средства создания приложений. Это означает, что jQuery будет устанавливаться на всех телефонах Nokia, где имеется среда исполнения.

Для начала Nokia перенесет в эту среду ряд своих приложений (таких как Maps) и перепишет их с использованием jQuery. Данная библиотека станет частью платформы для разработки виджетов. Соответственно любой разработчик сможет применять jQuery при создании виджетов для телефонов Nokia”.