ページ

2010年3月9日火曜日

C#勉強中 C# 2.0 入門 2-4

C# 2.0 入門続き
  • 第2回 ジェネリック
    最近になって.NET系を使い始めた私にとっては、最初期にはGenericが無かったことの方が驚きです。新しいオブジェクト指向言語でなら当然の機能だと思っていました。VBではいやというほどGeneric型を使っていたので、ここはC#での記法を学ぶだけで過ごしましょう。
  • 第3回 新しい繰り返しのスタイル - yield return文とForEachメソッド
    反復子?ここではRubyの例がでていますが、昔にちょっと触ったPythonにもありました。そういえば、Excelのセルアクセスでも使いましたね。使う方はごく簡単ですが、作成する方は面倒ですね。そういえば反復子のコード、何かのサンプルで見たことがありましたが、なにやら解りにくかった記憶があります。まあやりたい事は判るのですが通常のコードとは全く異なった動作になりますから。ここの説明を読んでやっと内容(というかこのコードがどのような実行パターンに展開されるか)が理解できました。最後の節で実際の展開イメージが記載されいます。これを見れば一目瞭然です。
    と、ここまで反復子の話を書いてきて最後にCollectionオブジェクトのForEachメソッドを挙げますか?しかも、yield returnはめったに使わないし、こちらの方が遥かに早いと。これはJavaなんかのMapと同系列の機能ですね。単純にコレクション内のすべてのデータについての処理を行なうなら、こちらの方が適していますね。
  • 第4回 Findメソッドとnull許容型
    前半はCollectionのFind、 FindAllメソッドの話題で、これは前章のForEachメソッドと同じ系列のものです。ForEachは要素に対してある演算を施していくのに対して、Find、FindAllは特定条件を満たす要素をピックアップしていくものです。これもいまや当たり前の機能です。
    で、後半はnull許容型の話題。たしかにSQL連携しているとやたらとnullが出てきて、それらが簡単に処理可能になるのは解ります。言語仕様的にはあればいいかなとは思いますが、システム設計的には私もNULL撲滅委員会にシンパシーを感じる方なので、めったに使わないかと思います(だいたいデフォルト値への代用で済みますからね)。
今日のところはここまで。

0 件のコメント:

コメントを投稿