タグ

2011年7月28日のブックマーク (4件)

  • Flashのように滑らかなアニメーションを実装するには(uupaa.js vs jQueryデモ) - latest log

    JavaScript で Flash のような滑らかなアニメーションを行うためには、クロスブラウザな知識の他に、GC(ガベージコレクション)や「どうすれば安定した品質がだせるのか」といったスキルが求められます。 # GC の話は WEB+DB PRESS 57 でちょっと書いてます。 派手目なアニメーションが目的で jQuery を採用している方もいるとは思いますが、実は uupaa.js でも アニメーションや easing が利用できるんです。あらびっくり。 ただ「機能がありますよ〜」だと、さみしいので みんな大好き jQuery と uupaa.js のアニメーションの品質の違いが分かるようなデモを作成してみました。 iPhone/iPad や、IE6〜IE8で opacity を切り替えて見ると、ハッキリと違いが分かると思います。 http://jsdo.it/uupaa/uufx

    Flashのように滑らかなアニメーションを実装するには(uupaa.js vs jQueryデモ) - latest log
    miya2000
    miya2000 2011/07/28
    「window.requestAnimationFrame の利用が推奨されており、setInterval は requestAnimationFrame が利用できない場合に仕方なく使う形になります。」
  • neue cc - Deep Dive AsEnumerable

    AsEnumerable、といったらLINQのAsEnumerableです。その挙動は、IEnumerable<T>へと型変換をします。それだけ、なので実に影が薄いのですが、それでいて奥深く使いこなしが求められる、はずなのですが陰が薄いので無視されている感がなきにしもあらずなので、しっかりと紹介したいと思います。 AsEnumerableの実装 実装は非常に単純明快で、中身ほとんど空っぽです。 public static IEnumerable<T> AsEnumerable<T>(this IEnumerable<T> source) { return source; } ようするにアップキャストです。どういう時に使えばいいかというと、例えば可変長引数とIEnumerable<T>の両方を受けたいオーバーロードを作る場合。 public void Show(params string[]

    miya2000
    miya2000 2011/07/28
    c# を使っていてキャスト演算子が出てきたら負けだけど、メソッドのシグネチャにあわせるためにアップキャストが必要なことがあってそのための AsEnumerable。あと ToList も遅延実行が台無しなので避けたい。
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    miya2000
    miya2000 2011/07/28
    「このキャストは危険なので、使う気をなくすような長い名前が付けられています。」
  • neue cc - LinqとCountの効率

    IEnumerableを受け取ってのReverse(), Count(), ElementAt(), Last()は普通に考えると先頭から舐めるので効率がよろしくない。じゃあLinqの実装はどうなってるかというとSystem.Core.dllを眺めると // Reverse ICollection<TElement> is2 = source as ICollection<TElement>; // ElementAt IList<TSource> list = source as IList<TSource>; // Count ICollection<TSource> is2 = source as ICollection<TSource>; // Last IList<TSource> list = source as IList<TSource>; というわけで、IListを実装し

    miya2000
    miya2000 2011/07/28
    「IListを実装しているものなら、ちゃんと変換してくれているので大丈夫。」