タグ

2015年11月6日のブックマーク (5件)

  • Swift で Phantom Type (幽霊型) - Qiita

    社内の「Scala 勉強会」で Phantom Type (幽霊型) という厨二心をくすぐる感じのデザインパターンを教えてもらったので、同じことを Swift でもやってみました。 インスタンスの状態を変数ではなく 型パラメータ として持つことで、状態チェックを実行時ではなく コンパイル時 に行えるというイカしたテクニックです。 class Status{} class NotReady: Status{} class Ready: Status{} class Something<T: Status> { static func createInstance() -> Something<NotReady> { return Something<NotReady>() } func readify() -> Something<Ready> { return Something<Read

    Swift で Phantom Type (幽霊型) - Qiita
  • JUnit 4.12 の階層構造と JMockit を組み合わせて使う - Qiita

    JUnit 4.12 で、 Enclosed よりも柔軟な階層構造の定義がサポートされるようになりました。 こいつと JMockit を組み合わせて使う方法です。 実装 依存関係 dependencies { testCompile 'org.jmockit:jmockit:1.19' testCompile 'junit:junit:4.12' testCompile 'de.bechte.junit:junit-hierarchicalcontextrunner:4.12.1' } package sample.junit; import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.*; import org.junit.Before; import org.junit.Test; import

    JUnit 4.12 の階層構造と JMockit を組み合わせて使う - Qiita
    KinjouJ
    KinjouJ 2015/11/06
  • ★ページトップへ戻るボタンの実装方法:jQuery

    先週末まで2週間インターンシップに行っていたのでバタバタしてましたー!やっと落ち着いて来たので久しぶりの更新です。 今回は様々なところで見かける『スクロールして、ページトップに戻るボタン』の作り方です。 超簡単&コピペでOK! ページトップへ戻るボタンの実装方法:jQuery jQuery初心者さんが、まず1番最初にやりたいのはこの『トップページへ戻るボタン』なはず!!! なぜなら私がそうだったから! ! ボタンを押すとスーっと上に移動してくれる。この動きがたまらなく気持ちいい。 このブログにも最近やっと実装しましたが、クセになりますよね。 ページが縦に長くなりがちな方はぜひぜひ設置してみてくださいませ。 demo このブログがまさにdemoページそのものです!トップページから少しスクロールすると、右下に出てくる水色のボタンです。動きを試してみてください。 『ページトップへ戻るボタン』を知

    ★ページトップへ戻るボタンの実装方法:jQuery
  • ソート済の整数列を圧縮する件

    圧縮されたソート済の整数列ってのは汎用的なデータ構造で、たとえば検索エンジンの転置インデックスとか、いろんなところで使うわけです。で、検索エンジンの場合は速度重要なので、PForDeltaとか様々なデータ構造が研究されてる。 一方、H2O には、ブラウザキャッシュに載ってない js や css をサーバプッシュする仕組み「cache-aware server push」があって、何がキャッシュされているか判定するためにブルームフィルタを全ての HTTP リクエストに含める必要がある。 で、ブルームフィルタを圧縮しようと思うと、ブルームフィルタってのはソート済の整数列として表現できるので、これを圧縮しようって話になる。 検索エンジン等で使う場合は速度重要だけど、HTTPリクエストに載せる場合は空間効率のほうが重要になる。ってことで、空間効率が理論限界に近いゴロム符号(の特殊系であるライス符号

    KinjouJ
    KinjouJ 2015/11/06
  • Reactをes6で使う場合のbindの問題 - Qiita

    es6でReact.Componentを作成した場合 イベントハンドラでthisがundefinedになる es5のReact.createClassを使った場合は、 イベントハンドラが自動でbindされるので大丈夫だった es6 save(e){ this.props // undefined になる } render (){ return ( <button onClick={this.save} />保存</button> ); }

    Reactをes6で使う場合のbindの問題 - Qiita
    KinjouJ
    KinjouJ 2015/11/06