jQuery 3.0 и jQuery Compat 3.0. В чем разница и отличие от текущих версий?

jQuery 3.0

Трудно поверить, что прошло уже 8 лет с момента первого релиза jQuery. За эти годы подходы к веб-разработке сильно изменились. В течение долгого времени команда разработчиков jQuery пыталась поддерживать баланс между совместимостью со старым кодом и поддержкой новейших веб-технологий.

На сегодняшний момент одним из лучших способов поддержания совместимости, наряду с развитием продукта, является semantic versioning (семантическое именование версий), сокращенно называемый semver (подробнее на semver.org)

В практическом смысле semver дает разработчикам (и build-инструментам) представление о риске, связанном с переходом на новую версию программного обеспечения.

Номер semver-версии определяется в форме MAJOR.MINOR.PATCH (например, 1.32.21), где каждая из трех цифр является целым числом. Исходя из semver, изменение цифры на позиции MAJOR говорит о значительных изменениях в API, сообщая разработчикам о необходимости остерегаться перехода на эту версию.

Для jQuery такая концепция именования версий имеет некоторые нюансы, ведь поддержка браузеров является таким же важным аспектом, как и совместимость API.

jQuery 1.x и 2.x

Чтобы решить проблему поддержки старых браузеров одновременно с развитием и уменьшением исходного кода, команда jQuery с 2013 года начала параллельно выпускать две версии.

  • Первая версия осталась пронумерованной как 1.x (в настоящее время 1.11.1). Она обеспечивает совместимость с максимальным числом браузеров.
  • Версия семейства 2.x (в настоящее время 2.1.1) не поддерживает старые браузеры (включая IE8 и ниже), чтобы оптимизировать количество и качество кода. Версии jQuery 1.x и 2.x имеют практически одинаковый API. При этом они несколько отличаются по внутреннему устройству.

jQuery 3.0. и jQuery Compat 3.0.

Следующие версии jQuery будут использовать другой подход к именованию версий. Как и прежде команда будет выпускать 2 версии библиотеки:

  • Преемником библиотеки семейства 1.x станет jQuery Compat 3.0
  • Преемником библиотеки семейства 2.x станет jQuery 3.0

Начиная с версии 3.0 команда разработчиков будет придерживаться новой стратегии в поддержке браузеров. Основной пакет jQuery будет максимально оптимизирован для поддержки последних версий (текущей и предыдущей версии каждого браузера). Возможна также поддержка дополнительных версий, основываясь на их фактической доле на рынке. JQuery Compat будет иметь максимально широкую поддержку браузеров. При этом он, конечно же, будет работать медленнее и иметь больший размер исходного кода.

Несмотря на скачок в номере версии, команда jQuery не видит больших проблем при переходе на версию 3.0. Некоторые изменения, такие как прекращение поддержки устаревших методов, будут описаны в блоге jQuery в ближайшем будущем. Для поиска и устранения подобных конфликтов разработчикам предложат специальный jQuery Migrate плагин.

Советы для разработчиков:

  • Если Вы нуждаетесь в поддержке старых браузеров, включая IE8, Опера 12, Сафари 5, и т.п., используйте jQuery-Compat 3.0.0. Разработчики рекомендуют эту версию для большинства веб-сайтов, так как она предлагает наилучшую совместимость со старыми браузерами.
  • Если Ваш веб-сайт предназначен только для новых браузеров или является web-приложением для webview (например, PhoneGap), используйте jQuery 3.0.0.

Обе версии будут доступны в виде bower и npm-пакетов. Также jquery-compat-3.0.0.js и jquery-3.0.0.js будут размещены на jQuery CDN и Google CDN.

Дата выхода jQuery 3.0

Дата выхода jQuery 3.0 пока не известна. Следите за новостями в блоге jQuery и на html5.by

Tagged with:
3 comments on “jQuery 3.0 и jQuery Compat 3.0. В чем разница и отличие от текущих версий?
  1. aradul пишет:

    Вы забыли указать оригинал статьи – http://habrahabr.ru/company/enterra/blog/241983/

  2. KT пишет:

    Отказались от compact http://blog.jquery.com/2016/01/14/jquery-3-0-beta-released/

    If you read the jQuery 3.0 alpha blog post, you might remember that we announced something we called “jQuery Compat”. You can forget that. On January 12, Microsoft dropped support for IE8, IE9, and IE10. We’re not going to go that far just yet, but we are dropping support for IE8. And with IE8, so goes jQuery Compat, gone before we even released a final version. There will only be one jQuery from now on!

Оставить комментарий

Ваш email не будет опубликован. Обязательные поля отмечены *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

*

* Copy This Password *

* Type Or Paste Password Here *

Проект создан в GanttPRO
Спасибо за лайк в FACEBOOK
Подписывайтесь на новости вконтакте
Последние статьи от html5.by