.NETのソースコードがWebで閲覧可能になったということで、C#ユーザー会で興味深いところを見る会となりました。
Webブラウザだけで見ることができます。Ref12 extensionという拡張機能をVisual Studioに入れれば参照することができます。とはいえ、ブラウザで表示するだけっぽいので、将来的にはVisual Studioの「定義をここに表示」みたいな感じでインライン表示してくれるとうれしいな。以下、出た話題を覚えている限りで(なんせ私のノートは岩永さんに貸していたので何もできなかった…)。
- 検索すごく速い。
- コメント多いソースと少ないソースの差が結構ある。たとえばHashの計算のようにロジックが中心のソースはコメント少な目。Remotingのように説明が必要(?)なものは割と多い
- Microsoft.VisualBasic名前空間もC#で書いているんだ
- DateTimeのParse見ると心が折れそうなくらい長いswitch~case。でもこれはしょうがないよね…Parseものはたいていそうだけど。
- 多くのソースが公開されているが、EntityFrameworkのようにオープンソースになってしまったものはこのツリーに含まれない(ので見るの大変)。
- 今.NET 4.5.1だけだけど、それ以前も歴史追うためにみえればいいなぁ。たとえばHashの実装が変わったときにどんなふうに中身が変わったか見えると楽しい。
- #if GENERICS_WORKとかもあるが、盛大にコメントされているところも多い
- #if SILVERLIGHT はあるけど、XBOXの定義は見つからない…ソース別?