タグ

ブックマーク / taedium.hatenadiary.org (2)

  • 任意の型に対してLINQのクエリ式を使用する - taediumの日記

    知らなかったよ。自分で作った任意の型にクエリ式が使えるんですね。 [TestClass] public class LinqTest{ [TestMethod] public void Test() { var source = new Wrapper<int>(100); var wrapper = from n in source where n > 50 select n; Assert.AreEqual(100, wrapper.Value); var wrapper2 = from n in source where n > 100 select n; Assert.AreEqual(0, wrapper2.Value); } } public class Wrapper<T> { public T Value { get; private set; } public Wrapp

    任意の型に対してLINQのクエリ式を使用する - taediumの日記
  • NullPointerExceptionなどの標準例外を使っていないわけ - taediumの日記

    Domaでは、Daoのメソッドに期待されない引数(nullとか)が渡された場合に例外をスローしますが、そのときの例外にNullPointerExceptionやIllegalArgumentExceptionを使っていません。代わりに、DomaNullPointerExceptionやDomaIllegalArgumentExceptionといったDoma独自の例外を投げます。 これはなぜかというと、Daoのメソッドに対する事前条件を満たしていないのか、それともDoma自身にバグあって例外がスローされてしまっているのをわかりやすくするためです。 つまり、DomaNullPointerExceptionやDomaIllegalArgumentExceptionがスローされるということは、「これはDomaが意図的にスローしています。なんらかの条件を満たしていません。」というメッセージです。そし

    NullPointerExceptionなどの標準例外を使っていないわけ - taediumの日記
    miya2000
    miya2000 2010/08/29
    コメントしました。今思いついたのですが「例外メッセージ書くのが面倒だから型を作っておいてコード補完でウマー」という主張なら理解できます。
  • 1