サティヤムを求める-と置くPacktから新しいYUI 2.8ブックの無料コピーの対象となる

8時03分時2010年7月29日エリックMiragliaによって午前|中開発 | 28コメント

サティヤム(ダニエルバレイロは)先週書いた書き込みを彼の経験についてYUI 2.8:図書館を学習 、新しいYUI 2利用可能置 ​​くPacktからボリューム。

置くPacktは寛大にいくつかの無料の電子コピーを提供してきましたYUIBlog この投稿にコメントとして YUI 2.8に関連するトピックにサティヤムからご覧になりたい質問やチュートリアルを提案 。読者を、そしてサティヤムは、のいずれかのご提案トピックを拾う場合彼の三つの"サティヤムの質問"ブログの記事を置くPacktはダウンロードするために利用できるサティヤムの本の電子コピーが作成されます。

サティヤムは、来月かそこらのブログにここに彼の三お気に入りの質問に対する答えが掲載される。

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

YUI 3.2.0のプレビューリリース1:タッチイベントのサポート、ジェスチャー、トランジション、CSSグリッド、ScrollView、アップローダ、および詳細

2010年7月26日12:24で、エリックMiragliaによって|中開発 | 15コメント

YUI貢献者のチームは、今後のYUI 3.2.0リリースの最初の開発者向けプレビューを発表しています。 このプレビューは、開発者と実装者が潜在的なリグレッションのためのリリースをテストするため、新たな機能とコンポーネントに関するフィードバックを提供するための機会を提供しています。 既存のYUIの実装を持っている場合、あなたの開発環境でYUI 3.2.0pr1を行使し、私たちはあなたが見つけるものをお知らせください。

プレビューリリースを開始する3つの方法があります。

  • 中古品に使用します:YUI 3.2.0pr1は3.2.0pr1バージョンのタグを経由してCDN上で利用可能です-あなたのようなプレビューリリースのファイルを参照することができるようにhttp://yui.yahooapis.com/combo?3.2.0pr1/build/yui/yui-min.js あなたがプレビューリリースのためにこの種のファイルに切り替える場合、以降のすべてのuse()ステートメントは、YUI 3.2.0pr1をロードし続けます。
  • からダウンロードYUI 3.2.0pr1:リリースダウンロード YUILibrary.com -このリリースに新しいものも含め、ソースコードおよびすべてのコンポーネントの例を含めて。
  • 例の情報も見てみよう便宜上、我々は、投稿したプレビューを (と一緒に機能している例の名簿 YUIBlogに)。 お使いのCDNバージョンの参照(またはプレビューをダウンロード)を切り替えると、独自の環境でそれをテストするの前置きとして、そこにリリースを探検する自由の感じ。

YUI 3.2.0でお越しの注目すべき変更点

すべてのYUIの開発作業と同様に、私たちの現在の計画と進捗状況を追跡することができます私たちのYUI 3タスクリストに YUI 3.2.0(およびいくつかの今後の3.3.0)変更点の包括的なリストを含む、、 また問題に対処する私たちの進行上で確認することができますバグデータベースに ここで3.2.0開発者向けプレビューに登場新規および更新されたコンポーネントの一部は以下のとおりです。

  • タッチイベントのための組み込みサポートが追加されました( mynode.on("touchstart", function(e) {}); )。 -我々はまた、2つのバンドルされたジェスチャーでジェスチャーのモジュール追加しましたgesture-flickgesture-move -タッチとマウス駆動型デバイスの両方でその作業を。 APIドキュメントまたはチェックアウト付属のサンプルのページジェスチャーを使って起動する方法についてのアイデアのために。
  • YUIの本質的なローダは機能ベースのロードをサポートしています。これは、私たちは別々のサブモジュールに例えば、IE固有のコード、分離し、ローダーのみ ​​がそれを必要とするブラウザに対してそのコードをバンドルできるようにすることができます。 我々は、IE以外のブラウザへのDOMモジュール、不要コードの変更と最近のブラウザのすべてのユーザーの利益になる性能/ K -重量ブーストで出荷IE固有のコードを避けるために、この新機能を活用している。
  • YUI 3のアニメーションのポートフォリオは、遷移を処理するためのこの強力な、ハードウェアアクセラレーション(可能な)テクニックのためにブラウザの正規化を提供し、 トランジションモジュールを介して遷移をサポートしていますサンプルコードの例をご覧ください アニメーションは、その最も基本的な形で、有意に良好ブラウザで簡単なアニメーションのためのK -軽量化、近代的なブラウザ用の合理化された依存関係ツリーを持っています。
  • YUI 3.2.0はそれでYUIのCSSグリッドコンポーネントの新しいベータ版をもたらすだろう、と、プレビューのリリースでは、グリッドにこの新しいアプローチを探求を開始することができます。 例を開始する最適な場所です
  • 我々はYUI 3.2.0に新しい(ベータ版)ScrollViewのウィジェットを持ってYahoo!ケータイエンジニアリングチームのマイケルジョンストンと協力。 ScrollViewは、開始または終了限界にスクロールするときに要素の弾力性をエミュレートして、ネイティブのAppleのiOSアプリケーションのユーザに親しまれ、スクロールペインの実装を提供します。 あなたはわかりますScrollView用3.2.0pr1の例であなたのAndroidやIOSデバイスでタッチイベントと同様にマウスでうまく機能し、このコンポーネントは、デバイスニュートラルであること。
  • YUI 2からアップロードコンポーネントは、3.2.0のベータ版としてデビュー、同様に今YUI 3ファミリの一部です。
  • YUI 2バージョンのポートだったYUI 3.0.0、でデビューした履歴モジュール、(それはとしてYUI 3.2.0で利用可能なまま廃止されているhistory-deprecated )。 新しいベータ歴史ユーティリティデビューは3.2.0で、 YUI 3のギャラリーからライアングローブの歴史Liteモジュールに基づいて。 新しいコンポーネントからプレビューリリースの例では、良い出発参照です。
  • JSONPとYUI 3ギャラリーからYQLクエリモジュール 、このリリースではベータ版としてデビュー、標準的なコンポーネントとなっています。

フィードバック

プレビューリリースの目標は、次期リリースの進捗状況を評価し、フィードバックを提供するために、地域社会で私たちのすべてのために、できるだけ簡単にすることです。 3.2.0pr1をテストし、私たちはでチケットを提出することにより、あなたが見つけるものを知っているようにいくつかの時間かかるしてくださいYUI 3のバグデータベース "バージョンで観測された"3.2.0pr1としてマークする。 我々は上のプレビューリリースからの質問に対処するために最善を尽くしますYUI 3フォーラムをすぎて、。

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

YUIシアターは堂々巡り、チャドAuldの礼儀とBrilapsチームに来る

6時15時2010年7月22日エリックMiragliaによって午前|中YUIシアター | コメントオフ


YUI貢献と、Yahooの元チャドAuldがもたらしたプロジェクト-彼のBrilapsグループを持つ彼の最新プロジェクトについて教えてメールを送ってきたYUIシアターを堂々巡りを経由してテレビ画面に。 チャドの言葉で:

BoxeeはテレビにWebコンテンツをもたらすことを支援することを目的と新進気鋭のクロスプラットフォームアプリケーションです。 それがオープンソースに基づいてXBMCのプロジェクトとユーザーが追加のコンテンツを持ち込むため、新しいプラグインを書くことができます。 我々の最初の堂々巡りのプラグインを構築するために約3週間前に新しいプロジェクトを立ち上げ、そして私たちはウェブからテレビに一緒にしたかったコンテンツとしてYUIの劇場を選択する。 (と成長)がアーカイブされた非常に多くのすばらしいビデオがある、我々はそれが快適に見る時間があるかもしれない彼らのカウチから(ビデオのほとんどは誰かよりも少し長くなって、特に以来にアクセスできるようにする開発者向けコンテンツの素晴らしい源だと思う彼らのラップトップから)。 それは、プラグイン、それを研磨し、いくつかのバグを整理して別の週に、と堂々巡りのQAチームによって承認されたアプリケーションを取得するには約一週間を構築するために週についての私達を取り、公共のリポジトリにプッシュ。 私はちょうどそれが今朝公開リポジトリをヒットし、私は手を差し伸べ、あなたが知っているように思っている単語を得た。

これは楽しんでいる人にとって素晴らしいニュースですYUIシアターのコンテンツを、彼/彼女のソファでくつろぎながらDouglas Crockfordは、Brendan Eichが、他のすべての偉大なYUIの劇場のスピーカーから最新に追いつくためにしたいと思います。 チェックアウト上記のビデオのグラブに行くし、UIのツアーを、と堂々巡りをし始める。

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

ヤフーフレックスフォースチームで使用可能なフロントエンドエンジニアリング体位

11:00 2010年7月21日サロコルによって午前|でYahooのフロントエンドエンジニアリングの仕事 | コメントオフ

ヤフーフレックスフォースは現在、少数の有能なフロントエンドエンジニアとチームを拡大しようとしている。 フレックスフォースチームの一員として、知名度の高い、高視認性の複数の戦略的なプロジェクトで作業する機会が与えられます。 これらのポジションは、組織全体でベストプラクティスと知識共有の大使であること伴います。 私たちは、最新の戦略、テクニック、およびツールを使用していることを確認するために、YUIのチームを含む、異なるプラットフォームのチームと密接に協力。

最近の例として、フレックスフォースチームは新しいの実装の ​​後ろにいたヤフー アップデートは、ウィジェットを使用して完全に組み込まれているYUI 3

この役割で成功するために、あなたはすぐに立ち上げ、さまざまなことに挑戦できる肯定的な考え方と自己スターターと速い学習者になる必要があります。 フロントエンドの技術とベストプラクティスのための真の情熱も必要です。

ヤフーフレックス力で、私と私の同僚と協力することで、Yahooのキャリアサイトへの頭に興味深い音と次の位置をチェックアウトする場合:

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

YUI:水営業時間、7月21日

7月20日ルークスミス15:07時2010 |中開発 | 3コメント

に加入していないことのために説明するとYUIカレンダーまたはYUILibrary.comフォーラム 、の次の割賦YUI:営業時間は 、7月21日明日になります。

どのようにウィジェットを構築し、どのようにYUI 3の方法でプラグインを構築するために:今回は、単に独自のモジュールを構築し始めたばかりしているYUIのコミュニティの貢献者のための定期的なテーマに焦点を当てるつもりだ。

アンソニー小土瓶、#ユイIRCチャン​​ネル名声の別名apipkinは、昨年、彼の学んだことを通して私たちを導き、あなたが権利を作っているという自信にYUI 3ドキュメントの例をコピーアンドペーストで移動する方法を示して、ゲストになります"思考のYUI 3ウェイ"でこの問題にアプローチする方法の選択肢。

我々は、彼のシンプルなギャラリーのモジュールの2つを見てみましょうボタンウィジェットノードのIOプラグイン 彼は、今日の対、もともとはどうだったかを説明します、そしてなぜ彼らが変更されました。

その後、我々は、しばらくの周りに遊ぶだろう多分コールで人々がカバーする内容に基づいて、ゼロから何かを作り上げる。

YUIのチームからマットスウィーニー(ノード、セレクタ、TabView、グリッドなど)とSatyen"教祖"デサイは(ウィジェット、プラグイン、ベース、属性など)も呼び出しになります。 だから家の中でベストプラクティスが存在します。

貢献者(まだ?)ではないYUI 3の消費者にとっては、この呼び出しは、まだYUI 3ウィジェットやプラグインが組み込まれていると、どんな種類のパターンが新しいYUIコンポーネントから期待する方法の背後にある考え方を理解する上で貴重なはずです。 と疑いの余地は常に他の偉大なお持ち帰りは存在しません。

私たちは、午前10時から12時PDTにオンラインになっているでしょう。 接続の詳細は、いつもと同じです。

  1. 1-888-371-8922(米国以外の参加者は、ローカル番号のために私にメール)にダイヤルイン
  2. 出席者コード47188953を入力してください#
  3. 画面共有セッションに参加する (これはそれを初めて使用する場合、これはAdobe Connectのプラグインをインストールするようにプロンプトが表示されます)

ここにあるのですフォーラムのスレッドは、この営業時間のために。 私は、呼び出しの後に面白いお持ち帰り用のいくつかを掲載します。

従ってください@ yuilibraryの最新情報については、Twitterで。

そこにお会いしたい!

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

著者のノート:YUI 2.8を記述する置くPacktからライブラリを学ぶ 、新しいYUI 2本

午前9時14分7月20、2010サティヤムで午前|中開発 | 1件のコメント

ダニエルバレイロ(サティ) 著者について:ダニエルバレイロ(画面名サティヤムは)かなり長く使われています。 ENIACは、彼が生まれる前に一日オフなので、彼はそれを逃したが、彼 ​​は以来、多くを逃していないれました。 彼はパンチカード、プログラム6502チップ(アップルIIを覚えていますか?)へのチャンスを持って、TRS - 80を所有し、他の博物館にされている可能性が彼の母国アルゼンチンで動作して機器のいくつかの素晴らしい作品を参照してください。 グローバル化が世界への扉を開けた時、彼はその後、なんとか使える英語(プラス電気工学の学位)バックNCSAモザイクの日のベイエリアでの5年間の仕事で終わったのキャリアパスに彼を置く。 完全に彼の友人は、<のと>"sの完全な、彼のプレーンテキストエディタで書いた変な波線に興味をそそら、彼はフロントエンドエンジニアリングの世界についてのかなり多くを学ぶことになった。 COBOLやFortran以来、長い道のりそれている。 今、彼はバルセロナ、スペインに近い地中海沿岸に非常に喜んでセミリタイア住んでいる。 彼は地中海の太陽を浴びていないときは、サティヤムがでYUIのコミュニティの中で最も多作かつ知識豊富な参加者間で見つけることができますYUIフォーラム

2009年12月に、少なくとも編集者置くPackt Publishingは、私が彼らの本の第2版を作成したいなら、私に尋ねたYUIライブラリ 原作者、ダンウェルマンは、同時に他の事業に従事し、そして彼らは広く精通していた著者必要とされたYUI 2 私はだと思った最初の事は:あなたは少し遅れてではないのですか? 多くのYUI 3は、ジョージア州のうち既にであり、より多くのリリースごとに来ていた。 しかし置くPacktチームは続行したい、と私は挑戦することに合意した。

7月16日に、新しいボリュームは、出てきたYUI 2.8:図書館の学習ではない第二版としてではなく、新しいタイトルとして、。 最後に、それはそのような悪い決断ではなかった。 本は編集プロセスを通過した一方で、 YUI 3からYUI 2コンポーネントをロードする能力獲得use()ステートメントを すべてのYUI 2コンポーネントのYUI 3バージョンを生成するために、開発者から圧力を考慮しながら、広範なYUI 2カタログの有用性を拡張します。

この新しいボリュームを持つ目的は、すべての非ベータ版のYUI 2つの要素をカバーすることでした。 この広い視野は、私はまったく使用されないと思います私はやっと彼らの最も基本的な形態だけでなく、他の人に使っていたコンポーネントでより深く見てみることを余儀なく。 しかし、初版ではなく、長いライブラリが公開された後に始まったプロジェクトとは対照的に、私はYUIと累積経験の数年を持っていた - 私自身の経験は、彼らの経験やアドバイスを共有する多くのユーザのそれと対フォーラムやブログ上で。 私はまた、レビュー、二、CaridyパティーニョとIliyan Peichevの優秀なチームが多くの失策から免れた、またよく知られているYUIの貢献者です。

扱いやすい長さに書籍を保つために、私はいくつかのイメージ、長い例、およびで見つけることができる参考資料を排除YUIのウェブサイトを 初版は各章ごとに最大で2つのコンポーネントを持っていたが、新しいものは、最大4個持っており、新たな章がいくつかあります。 たとえそうだとしても、一部のコンポーネントは、カットを行っていない。

YUI 2の進化

この本を書いている間、私はYUIライブラリについて多くを学んだ、と私はダンのテキストへの変更は、2006年の発売以来、図書館の進化についての有益でした。

サンプルコードのためのプログラミングスタイルはここ数年で変更されています。 代わりに名前空間を(または使用して作成するのでYAHOO.example常にプレースホルダーとして使用可能である、)、我々は今、DOMが使用可能になったときに作成無名関数内ですべてのものに合うように傾向がある。 (このスタイルは、我々はYUI 3で見たものに近いです。)我々は絶対に世界的にそのような我々がカスタムライブラリのコンポーネントを作成するときなど、アクセス可能な変数(オブジェクトを含む)を作成する必要がある場合には、現在の名前空間を使用してください。 我々はYUI(ドム、イベント、ラングは一般的なショートカットである)または当社独自の変数から、より頻繁に使用するオブジェクトの機能的にスコープのエイリアスを定義することができますので、サンドボックスでは、私たちにいくつかの入力の手間を省ける。 また、このアプローチは可能YUI Compressorがはるかに良い仕事をする。

ライブラリの全体のパノラマビューを持つことは私はそれが時間をかけて開発された方法に気づくことができました。 コンポーネントのアーキテクチャが変更され、それはすべてが今YUI 3であるものに収束しているかは明らかです。

初期コンポーネントには、ツリービューのように、いくつかの依存関係を持っていた。 特定のパターンが明らかになり始めたように、いくつかの基本的なコンポーネントのインフラストラクチャは、開発に着手した。 コンテナの家族はいたConfig getterメソッドとsetterメソッドに許可されるオブジェクトを、そしてそれを継承するすべてのコンポーネントを持っている。 また、我々はYUI 2で用意してカスタムイベントを回避する2つの方法の一つであるカスタムイベントオブジェクトを、使用しています。

TabViewのリリースに付属してYUI 2要素のユーティリティ (EventProviderを経由して)改善されたゲッターとセッターを提供(AttributeProvider経由)だけでなく、より良いカスタムイベント、。 セブンティーン他のYUI 2コンポーネントは、Elementから継承します。 進化ライブラリを見ると、それは要素の背後にある考え方は、DOM要素のラッパーとして、YUI 3のノードに知らせるためになったのかが簡単にわかります。 新しいコンポーネントはすべて、はるかに強力で完全な、それぞれ独自の領域にあるものの、他のコンポーネントのための基礎としての要素の役割は、YUI 3のベースとウィジェットに分けられた。 たとえば、ノードのallone要素の間のメソッドは、ノードのインスタンスを返すgetXxxx方法が完全にDOMを抽象 ​​化ではない、普通のDOM要素の参照を返す。

他の2つのモデル、一方のConfigとCustomEventsとAttributeProviderとEventProviderが全くできなくなるわけではありません。 メニューと分割ボタンでボタンが要素から継承するように両方のモデルでは、共存し、それがコンテナから継承される定期的なメニューを開催しています。

間違いなく、YUI 3は、この経験のすべての恩恵を受けて、しかし、YUI 2もYUI3から恩恵。 涼しい原料などとして、YUI 2を豊かにするYUI 3から来てevent-delegateelement-delegate我々が(を聴くことができると他の新しいイベントfocusinおよびfocusoutmouseentermouseleave )。 また、これは原因で可能となった我々がコンポーネントをロードする方法最も重要なことの導入- YUI 2の寿命中に変化した、 YUI 2ローダー -とYUI 3のクライアントサイドローディングのための本質的なサポートとして定式化となった。

影響を受けるのロード方法のコンポーネントが設計されてしまったとどのように最後のコンポーネントファイルが組み込まれている。 YUI 2では、未処理のサーバー要求の数を最小限に抑えるために、コンポーネントは、彼らが一緒にパックされた必要なものをできるだけ多く持つ必要がありました。 したがって、一部のコンポーネントは、必要に応じて別々の部品があまりにも高価だったのロードため、他の人が1つのファイルにパックされた機能の全範囲を持つオブジェクトの束を手に入れたときとちょうどそれらを手元に置いてそこにゆるく関連オブジェクトを得た。 その後、次のような集合体だったyahoo-dom-events.jsまたはreset-fonts-grids.cssそれらがほとんど常に一緒にまたは使用されているので、 utilities.jsですべての頻繁に使用されているコンポーネントを収集YAHOO.util枝。 しかし、本当の変化は、私たちは一つのHTTPリクエストにスクリプトやCSSファイルの任意の数のそれぞれをプルするために許可されてコンボ柄の要求、が付属しています。 それは、コンポーネントファイルと仮想的な"平均的なユーザー"に基づいて、凝集体に、それらの中にライブラリ内のオブジェクトのパッケージングを最適化することが少なく必要になります。

YUI 3では私たちはもはや、すべてを一度に"コンテナ家族"をロードする必要はありません。 我々は、別々のロードすることができますwidget- xxxx基本の上にファイルをwidget我々が必要とする機能に応じて。 そのアプローチは、YUI 3の標準ですが、YUI 2の進化のステップの一つとして来た。 したがって、のような最近のYUIの2つのコンポーネントevent-delegateelement-delegateそのベースコンポーネントからとは別に梱包されていますので、イベントのであるmouseentermouseleave 我々はさらに、機能を使用すると、ページから不要なコードを必要と残す設定より具体的に選択できるように、将来のリリースでライブラリのコンポーネントに分割表示される場合があります。

これは、必ずしも何らかの障害が発生した取り組みも行ってプロセスの進行状況の物語です。 なぜツリービューはElementから継承されていないか理由ではないコンテナ、およびそのためのメニューがあり、少なくとも、AttributeProviderとEventProviderに、エレメントに切り替えるか? 技術的に、答えは"下位互換性"ですが、より一般的な用語では"尊敬"です。 YUI 2コンポーネントの公開されたパブリックインタフェースを使用して数千のウェブサイトは(と何万人もの開発者)があります。 それらの変更を加えると、アップグレードパスを多くのアプリケーションを壊すか、それらを削減すると、彼らはコードの修正や新機能の恩恵を受ける必要があります。 インストールされているコードベースのように敬意を表するということはそれ自体のライブラリの機能です。 そのコードを作成する私達への敬意であることは、YUIのチームの人の特徴である、と私はそれがそうである非常に感謝しています。

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

モバイルブラウザのキャッシュ制限、再考

8時45分2010年7月12日ライアングローブで午前|で開発パフォーマンス | 9コメント

モバイルブラウザのキャッシュ制限:アンドロイド、IOS、およびウェブOS 、私はAndroid、iOSのブラウザのキャッシュの制限、およびウェブOSのデバイスを決定するために私の試みの結果を共有した。 記事の最後に、私は書いた:

出発点としてこれらの結果を使用しますが、あなたがモバイルキャッシュの制限についての仮定に基づいて、主要な決定を下す前に自分で確認してください。 雷のペースでモバイルブラウザの世界の変化は、したがって、この研究は非常に短い貯蔵寿命を持つことになります。

結局のところ、それは良いアドバイスだ:記事が投稿された日の後、 スティーブSoudersは彼が現実世界のWebワークフローのより多くの代表だった別の方法論を使用してテストを実行していたと異なる結果を得ていたとコメントした。

新しい方法論

特定のサイズのランダムに生成されるページに直接ナビゲート関わる私のオリジナルの方法論は、添えtext/htmlコンテンツタイプ。 この手法を用いた結果は、(ウェブOSを除く)確実に再現性があったが、スティーブが指摘したように、ユーザーはCSSとJavaScriptファイルに直接移動していない。 私の仮定は、HTMLリソースへの直接ナビゲーションの制限は、外部CSSやJavaScriptの制限が誤っていたのと同じだったこと、私のテストの結果が有効だったので、にもかかわらず、彼らは広く適用されていませんでした。

多くのIMセッション、いくつかの電子メール、および電話のカップルの過程で、スティーブと私は、新しいテスト方法を働いた。 私は私の上にそれのバージョンを実装し、キャッシュのテストフレームワーク 、そしてスティーブは、 バージョンを実装するために、結果を公開できるBrowserscopeを

新しいテストでは、我々は特定のサイズのランダムに生成されたCSSやJavaScriptコンポーネントを参照するHTMLページをロードする。 その後、我々は、同一のコンポーネントと、それがキャッシュから読み込まれたかどうかのチェックをロードする2番目のHTMLページに移動します。 コンポーネントがキャッシュから読み込まれたかどうかを判断するには、我々は、各リクエストでクッキーのタイムスタンプを格納します。タイムスタンプが我々がコンポーネントをロードする秒数を更新されている場合、我々は、コンポーネントがロードされていないつまり、要求がサーバーにヒット知っているキャッシュから。

新しい結果

我々は我々がテストしたすべてのモバイルブラウザは、HTMLページ自体のためにしたよりも、ページがロードされる外部リソースのための有意に高いキャッシュの制限を持っていたことが分かった これは、モバイルWeb開発者にとって素​​晴らしいニュースです。

以下の表は、我々の調査結果を示しています。

表:モバイルブラウザの外部リソースのキャッシュ特性
ブラウザ/ OS /デバイス 単一のコンポーネントの制限 パワーサイクルは、存続
アンドロイド2.2(ネクサスワン) 2メガバイト はい
モバイルSafari、iOSの3.1.3(1 - genをiPhone) 4メガバイト+ なし
モバイルサファリに、iOS 3.2(アプリ) 4メガバイト+ なし
モバイルサファリに、iOS 4.0(iPhone 3GS) 4メガバイト+ なし
モバイルサファリに、iOS 4.0(iPhone 4) 4メガバイト+ なし
ウェブOS 1.4.1(Palm Preをプラス) 〜0.99メガバイト(1023キロバイト) はい

4メガバイトは、我々がテストした最大サイズ、およびすべてのIOSデバイスにキャッシュされた4MBのコンポーネントであることに注意してください。 これらのデバイスの実際のキャッシュの制限が4MBを超える場合があります。 それは前回のテストでいくつか問題を抱えていたのに対し、Palm PreをプラスでWebOSは、この試験で一貫性のある結果を与えた。

このテストでは、CSS / JSコンポーネントは、はるかに高い限界値がディスクキャッシュの使用を示すかもしれないが、それははるかに低い限界私の前回のテストでは、iOSのHTMLコンポーネントに対して示すことが可能なのは、、それらのコンポーネントのためのRAMキャッシュの使用を示している可能性がありますしかしこれは単なる推測です。 Androidは、少なくとも、そのキャッシュは電源サイクルを存続ので、両方のケースではディスクキャッシュを使用するように思われる。

新しい推奨事項

私の前回のテストの結果と相まって、これらの新しい結果に基づいて、私には、以下の一連の推奨事項の更新を提供します。

  • 遠未来のキャッシュの有効期限ヘッダを使用します。これは、条件付きGETリクエストを送信することからブラウザを防止します。
  • 前回のテストは上のiOS 3.2でこの制限を課したことを示したので、25.6キロバイトまたはそれらがキャッシュされるようにしたい場合は以下にHTMLページを制限してくださいテストされるデバイスの最小のHTMLリソース制限アプリ-いました。
  • 1メガバイトの下にCSSとJSのコンポーネントを置かないでください。もちろん、1MBは巨大であり、あなたのコンポーネントには、これよりはるかに小さいはずですが、そのサイズが1MBに近づく限り、キャッシュ可能性のために別々のリクエストに分割するコンポーネントを気にしないでください。
  • それは、コンポーネントが長時間キャッシュに保持する、または電源をオフにすることが重要ならHTML5のアプリケーションキャッシュを使用することを検討してください
  • 独自のテストを実行してください。私は前回の記事でこのことの重要性を強調し、私はここでもう一度強調するでしょう。 出発点としてこれらの結果を使用しますが、あなたがそれらに基づいて重要な決定を下す前に自分で確認してください。

共有および拡張: del.icio.usでブックマーク | Diggそれ! | のreddit!

次のページ»
Yahoo!が主催

著作権© 2006-2011 Yahoo!社がすべての版権を保有。 プライバシーポリシー - サービス利用規約

を搭載ワードプレスヤフー ウェブホスティング