信じられないほどですが、真実:JQueryのリリースからほぼ8年が経過しました。 Web開発は長年にわたって大きく変化しており、jQueryもそれに伴って変化しています。 そしてこの間ずっと、私たちのチームは古いコードとの互換性と最新のウェブ開発方法のサポートとの完璧なバランスを維持しようとしました。
これを行う最良の方法の1つはsemverizationを通してです 。 実際には、開発者と開発ツールについて、SemVerはソフトウェアの新しいバージョンへの移行に伴うリスクの概念を示します。 バージョン番号の形式はMAJOR.MINOR.PATCHです。3つのコンポーネントはそれぞれ整数です。 SemVerによると、MAJOR番号が変更された場合、これは開発者が非常に注意する必要がある重要なAPIの変更を示しています。
ブラウザの互換性はAPIの互換性と同じくらい重要であるため、このバージョン管理の概念はjQueryに関しては微妙です。 よりエレガントなjQueryを作成するために、チームは2013年に2つのバージョンをリリースしました。 最初の行は1行目のままでした(*(現在は1.11.1))。最大数のブラウザーとの互換性を提供します。 2.0.0から今日の2.1.1までの2番目のバージョンでは、コードを最適化するためにIE8以下などの多くのブラウザーのサポートが除外されています。 jQueryの1. *バージョンと2. *バージョンの両方に同じパブリックAPIがありますが、内部実装にはいくつかの違いがあります。
今後のリリースでは、別の命名法を使用します。 前と同様に、2つの異なるパッケージについて話します。 今日のバージョン1.11.1の後継はjQuery Compat 3.0です。 jQuery 2.1.1の後継はjQuery 3.0になります。 npmとBowerの2つの異なるパッケージについて話しますが、APIが同じであるという事実を示すために同じバージョンを使用します。
また、これらのリリース以降、ブラウザサポートポリシーを確認しています。 メインのjQueryパッケージは、リリース時に一般的な新しいブラウザー(それぞれの現在および以前のバージョン)のみのサポートのおかげで、コンパクトで厳密なままです。 おそらく、市場シェアに基づいて追加のブラウザのサポートを含めるでしょう。 jQuery Compatパッケージは、より多くのブラウザーサポートを提供しますが、サイズが大きくなり、パフォーマンスが低下する可能性があります。
バージョン番号の大きな違いにもかかわらず、ほとんどの既存のjQueryバリアントから移行する場合、深刻な問題は発生しません。 すべてのSemVerバージョン管理ルールに準拠したいだけです。 廃止されたメソッドの削除などの変更は、 jQuery Migrateプラグインの新しいバージョンによって決定され、検索と修正が容易になります。 次のブログ投稿で、変更点についてもう少し詳しく説明します。
したがって、多くの文字を読みたくない人のためのjQuery APIのメインバージョン3.0について簡単に説明します。
- IE8、Opera 12、Safari 5などを含む最大数のブラウザーのサポートが必要な場合は、jQuery Compat 3.0パッケージを使用してください。 このバージョンは、例外なくすべての訪問者に優れた互換性を提供するため、ほとんどの新しく作成されたサイトに推奨されます。
- サイトが新しく人気のあるブラウザー専用に設計されている場合、または使用するブラウザーエンジンがわかっているときにWebView(PhoneGapやCordovaなど)用のHTMLアプリケーションを開発している場合は、jQuery 3.0.0パッケージの方が適しています。
- 反対を報告するまで、両方のパッケージには、それぞれのメジャーバージョンとマイナーバージョンに同じパブリックAPIが含まれています。 これにより、開発者は簡単に切り替えて、サードパーティのjQueryプラグインとの互換性を改善できます。
バージョン3.0で作業が進むにつれて、コードの変更、ブラウザのサポートなどの詳細について説明します。 連絡を取り合いましょう!