WinJS3.0 がリリースされました。


このブログで WinJS2.1 の機能をちまちまと紹介しているうちに、なんと、WinJS3.0 がリリースされてしまいました。

ライブラリの入手も、いままでは GitHub から入手して npm インストールするしかありませんでしたが、以下のページの [Direct Download] から zip に入った使える状態の js が入手できます。しかも、CDN まで用意されています。

Try WinJS
http://try.buildwinjs.com/#get

あたらしく 3.0 になった WinJS、いったいなにが変わったのか、詳しく以下の書かれていますので、ぜひご覧ください。

Building Apps for Windows
http://blogs.windows.com/buildingapps/2014/09/17/winjs-everywhere/

ざっと読んだかぎり、WinJS3.0 では以下の 3 つの点が強化されているようです。

  1. デスクトップ、モバイルを含めたメジャーな Web ブラウザーどの互換性強化
  2. PC、タブレット、携帯電話(スマートフォン)で共通で使用できるよう、コントロールのユニバーサル化
  3. アプリや Web サイトのパフォーマンスを上げるための WinJS ライブラリのモジュール化

上の文では紹介されていませんでしたが、WinJS のメジャーな PC Web ブラウザへの対応状況については以下で見ることができますので、ご覧下さい。

Try WinJS #status
http://try.buildwinjs.com/#status

と、いうことで、このへんをおさえておけば大丈夫でしょう。

じゃあ、今回はこのへんで…、というわけにもいかないので、私のつたない英語力と科学技術を結集して意訳した抄訳を (あれ?) 書いてみましょう。

なんかあやしい、と思ったら英語の得意な人に原文を読んでもらってくださいね。

———- ココカラ ———-

WinJS3.0 の特徴

  • 人気のあるデスクトップ/モバイルの Web ブラウザー、また Apach Cordova のような HTML ベースのアプリの環境にもまたがってクロスブラウザー/クロスプラットフォームをサポートしています。
  • 開発者がパフォーマンスを最適に制御できるよう JavaScript はモジュール化されており、Web サイトやアプリが必要とするモジュールだけを WinJS ライブラリからロードすることができます。
  • 改善された ユニバーサル コントロールは、さまざまなスクリーン サイズや入力方法に対応し、電話、タブレットおよび PC デバイスを横断してユーザにシームレスな経験を提供します。

このリリースは、GitHub コミュニティーのメンバーによって報告された issue と pull request に基づいた多くの改良を含んでいます

 

クロスプラットフォーム対応と設計の改善

WinJS チームは最後の 5 ヶ月を WinJS3.0 がプラットフォームとブラウザをシームレスに横断して動作することに注力しました。

これは、今現在、WinJS が ユニバーサル Windows アプリだけでなく、一般的な Web サイトにも使用することができることを意味します、また、Apache Cordova のような技術を利用して、さまざまなプラットフォームを横断する HTML ベースのモバイルのアプリケーションを構築する場合にも使用することができます。

なお、 WinJS の Web ブラウザーおよびオペレーティング システムのサポートのマトリックスは以下の Wiki で見ることができます。

WinJS Browser Support
https://github.com/winjs/winjs/wiki/Browser-Support

WinJS 3.0 のリリースで対処した主なアイテムは、レイアウト、キーボード入力、文字列のローカリゼーション、および 右から左に記述される言語の支援のためのクロスプラットフォーム・インフラストラクチャーの改善です。また、主要なオペレーティング システムおよびブラウザーのコンポーネント上で実行される包括的な単体テスト スイート、カスタム WinJS コントロールのデザイン アップデート、組み込み HTML コントロールが、多くのプラットフォームやブラウザーで一貫したユーザーエクスペリエンスを保障します。

これらのデザインの更新プログラムは次のとおりです。

WinJS リポジトリに追加されたフォントに含まれるシンボルは、アプリバー、ナビゲーションバー、フリップビュー、レイティング、ハブで使用され、多くのオペレーティングシステムと Web ブラウザーで描画されます。

以下は iOS 7 上の Safari で、WinJS2.0 のレイティングコントロールと WinJS3.0 のレイティングコントロールを比較した例です。

リストビュー は、現在すべてのプラットフォームでグリッドとリストのレイアウトがレンダリングされます。CSS グリッド依存関係は削除され、現在はリストビュー のグループがサポートされています。

現在のアプリバーにには起動するべき視覚的なアフォーダンス (目印) があり、非表示となる場合ももはや画面端のジェスチャーには依存しません。

フリップビューのナビゲーション ボタンは CSS スクロールのスナップ ポイントをサポートしていないプラットフォームでは常に表示されます。

インプットレンジ、組み込み HTML スライダー コントロールとその他の組み込みのコントロールは、クロス プラットフォームのフェイスリフトを受けました。

ナビゲーションバーでは、CSS グリッドへの依存関係が削除され、レイアウトが改善されました。

suggestions API をサポートするためのシム (詰め物) が作成されたので、検索ボックスのサジェスチョンは多くのプラットフォームで表示されます。

トグルスイッチは、もはや組込みのHTMLスライダーに依存性はなく、全てのプラットフォームで完全な機能を表示します。

ピボットはマウスからも使用できるように、ヘッダーの一方の横にボタンを持っており、小さなモバイル画面だけでなくすべての画面サイズにうまく表示するようになっています。

 

モジュール化

WinJS 3.0 は、今いくつかのダース モジュールに分かれています。以前のように、すべてのモジュールを備えたライブラリ全体を引き続き使用することもできます。 または、WinJS の必要なモジュールだけを使用してカスタム ビルドを行うこともできます。この仕組みを利用して、アプリのパフォーマンスと帯域幅使用率を最適化を制御することができます。

WinJS を Web サイトで使用する場合、または AngularJS や Knockout のような他の人気のあるライブラリと一緒に使用する場合に特に便利です。WinJS は他のライブラリとの相互運用性を考慮したアーキテクチャ レイヤーを用いて設計されました。

たとえば、アプリで AppBar のみを使用する場合は、関連のモジュールだけを含む AppBar をカスタム WinJS ビルドできるようになりました。そしてそれは、 Knockout のようなライブラリと共にバインディングに使用するこちもできます。

WinJS のカスタム ビルドを作成する方法については、GitHub wiki ページ を参照してください。

Web サイト try.buildwinjs.com のパフォーマンスを改善するために実際に作られたカスタムビルドのサイズは以下の通りです。

進歩したユニバーサルコントロールの設計

クロス プラットフォームの更新プログラムに加え、携帯電話、タブレット、PC のシナリオが、 ひとつの WinJS のリリースで共通してサポートされるようにライブラリを統合を進めています。

その目標に向けて、以前は携帯電話だけが利用していたアニメーションは現在 WinJS 3.0 ではフォームファクターを横断して利用可能になっています。

たとえば、以前に携帯電話でのみ利用可能だったピボットコントロールも、すべてのフォームファクターにまたがってサポートされており、マウスおよびキーボード、およびさまざまな解像度や画面サイズに対してナビゲーションできるように拡張されています。

今後も、この方向に沿った改善が行われていく予定です。

 

これから

MS Open Tech の WinJS プロジェクトチームメンバーは、GitHubコミュニティーからの暖かい歓迎と強い関心、支援に心からの感謝を共有したい。

一緒に、世界中の Web 開発者のニーズに対応し、すべての Web サイトおよびアプリケーション間でコードを共有することができる、楽しく、非常に洗練されたユーザー エクスペリエンスを作成するのに役立つ偉大なオープン ソースの JavaScript ライブラリとなるよう WinJS を構築していきます。

ぜひ、プルリクエストの提出や、GitHub の file issue、または Try WinJS の “open an issue” リンクを使用して問題をお知らせください。

またぜひ、チームの Facebook ページをチェックし、twitter @buildwinjs をフォローしてください。進捗状況についてのさまざまなアナウンスをしていきます。

皆様とつながれるのを楽しみにしています!

———- ココマデ ———-

 

このブログでも引き続き WinJS の使い方につい紹介していきたいと思いますので、お楽しみに!!

 

 

Real Time Analytics

Clicky

Comments (0)

Skip to main content