タグ

guavaに関するdonotthinkfeelのブックマーク (2)

  • 「それ、Guavaでできるよ」系の話 - Kengo's blog

    Javaってこれがめんどうだよねー」「あ、それGuavaでマシになりますよ」というやりとりが多い気がするので代表例をいくつか書いてみる。気になった方は公式ドキュメントをぜひ。 便利系Map 2キー使って1要素を特定するMap 複数の値を持ちうるMap 完全に同じ挙動というわけではない点に注意。 Set版もある。 キーでだけでなく値でも検索できるMap Mapの実装を作るのが面倒 ForwardingMapのサブクラスを作る……というのも良いが、そもそもMapをなぜ実装しなければならないかを確認したほうが良い。 例えば突っ込むキーや値を制限したいならMapConstraintsを使う。キャッシュのために特殊なMapを作りたいなら、MapMakerやcacheパッケージを見てみる。 コレクションをいい感じにゴニョゴニョ FluentIterableとIteratorsとIterablesをひ

    「それ、Guavaでできるよ」系の話 - Kengo's blog
  • パラメータの正当性検査とユニットテストのカバレッジ | DevelopersIO

    渡辺です。 最近はユニットテストの導入方法などに関するエントリーが多かったので、今回は実用的な小ネタとして、メソッドにおけるパラメータの正当性検査とユニットテストについて紹介したいと思います。 パラメータの正当性検査 はじめにパラメータの正当性検査について復習しましょう。Javaプログラマであれば読んでないことが許されないEffective Java(第2版P.175、ただし絶版)には次のように記述されています。 ほとんどのメソッドとコンストラクタは、パラメータとして渡される値に関して何らかの制約を持っています。たとえば、インデックス値が負であってはいけないとか、オブジェクト参照がnullであってはいけないというのが普通です。このような制約は明確に文書化すべきであり、メソッド体の初めに検査することで制約を強制すべきです。これは、エラーが発生したらできるだけ速やかにエラーを検出するようにす

    パラメータの正当性検査とユニットテストのカバレッジ | DevelopersIO
  • 1