中の技術日誌
 ホーム / 上へ

技術解説 .NET 2.0 ジェネリック(Generics)  第8回 ジェネリックまとめ

2006/01/27

この文書はVisual Studio 2005をベースに記述されています。

第8回 ジェネリックまとめ

これまでジェネリックが導入されることで1.xと2.0でどのようにプログラムが変わるかを見てきた。

もともとジェネリックが利用されていなかったSystem.Collections名前空間はすべてSystem.Collections.Genericsに置き換わったととってもらってかまわない。

以前のクラスと、2.0からのクラスの対比表は以下のとおりだ。

1.x 2.0
ArrayList List<T>
HashTable Dictionary<TKey, TValue>
Queue Queue<T>
Stack Stack<T>
SortedList SortedDictionary<TKey, TValue>
  LinkedList<T>
  Collection<T>

1.xで存在したコレクション系クラスはすべて置き換わるものがジェネリックで提供されている。

とはいえ、たとえばArrayListにはObsoletedAttributeは付けられない。
どのような型でも取りうるArrayListにはまだ寿命が残っているということだろう。

ただしForEachメソッドなどの新しい仕組みを利用可能にするために、やはりList<T>に移行すべきだろう。

以前までと同じ使い方をしようと思えばList<Object>とするだけで以前と同じ使い方が可能になっている。

いままでわざわざArrayListをラップしたクラスを作って、受け入れる型を制限してきたことを考えるだけで大きな進展である。

是非2.0のジェネリックを使ってほしい。

[戻る]


2006/12/16 大阪勉強会#4 + 忘年会 登録受付中

中の技術日誌
コンテンツ
わんくま同盟
わんくま同盟
わんくま同盟
広告
バナー
MVP LOGO
MSMVP Visual C# Since 2004/04-2007/03
MCP LOGO
070-316
姉妹サイト
姉妹サイト:じゃんぬのC#, VB.NET 入門
じゃんぬの
C#, VB.NET 入門
検索
Google

ブログ本家
広告