.NET Frameworkの中身を見てみる
注意:本エントリは、後で自分でやろうと思って収集した情報をまとめたものです。実際に私はまだ作業を行っていませんので、ここでの記述と実際の動作は異なる可能性があります。
まあ、まずはこのへんから。
Microsoft、VB 2008向け.NET Frameworkライブラリソース公開 | エンタープライズ | マイコミジャーナル
これが何かといいますと、従来アセンブリでのみ提供されていた.NET Frameworkライブラリのソースを公開しますよーということですね。
そんなことされて何が便利かというと、デバッグの精度が上がるよーということになります。
例えば、自分でコード書いてて、どうも動作がおかしいなーとか思ったとします。
こんな時、msdnLibの説明をきちんと読んで書いたつもりなんだけどなーとしょんぼりしたりします。
しょんぼりするだけでは事態は進展しないので、「記述をこう変えたらどう動作が変わる?」などと、必死に外挿法であれこれ試すわけですね。
でも、ライブラリの中身を直接ソースレベルでトレースできるとしたら。
実際にはこう処理されてるんだからmsdnLibの説明がおかしかったんだ!とか、自分が誤解していたぜ!とか、どー考えてもライブラリのコードがおかしいと思うぜ!とかダイレクツにわかってしまうので超便利。
あって困るもんでもなし、私も公開されたライブラリソースを見てみたいと思います。
Microsoftの公式ページとしては
Microsoft Shared Source Initiative Home Page
になってまして、ライブラリソースはこの中のReference Source Serviceという仕組みで公開されています。
このページでは使用ライセンスのMicrosoft Reference Source License (MS-RSL)へのリンクと、ソースを参照するためのVS2008の設定手順が書かれています。
もう少し詳しい手順と設定後の使い方の説明は、上記Home PageからリンクされているShawn Burkeさんのblog、Shawn Burke's Blog : Configuring Visual Studio to Debug .NET Framework Source Code にあります。
おー、リモートデバッガ使ってMicrosoftのリファレンスソースサーバに接続していく仕組みかー。
てことは、やっぱExpress Editionじゃだめじゃん。Standard以上じゃん。
(→Visual Studio 2008 製品ラインの概要の「デバッグ」の項参照)
でもこれ、公式ページには書いてません。Shawnさんのblogには書いてあります。
いいかげん重要な情報をblogでだけ提供するのやめてもらえないかな。
いちいち非公式ページをチェックしなきゃならないって状況が少し嫌んなってきましたよ。
Shawnさんは「最初にVisual Studio 2008 QFEをインストールしてねー」と言っていますが、ダウンロード先の説明では「ソースコードをダウンロードする際のパフォーマンス問題に対処」みたいなことが書いてありますので、必須ではないっぽい。
ConnectサーバからのダウンロードになりますのでLiveID必須。
KB944899って番号が振られてますが、今日現在でVB情報は提供されていません。ダウンロードページのタイトルも「Visual Studio and .NET Framework」のみってすっごいおざなりで、でも何するものなのかはこのページの「FIX:」って文章でしか説明されていません。
「32/64bit版両用のインストールモジュールだよー」と書かれていますが、日本語版対応になっているかどうかもちょいとアレ。一度試してみて、ダメならダメであきらめてもいいかも。
ちなみに。
「.NET Frameworkのソースを公開しちゃうよー」「しちゃったぜー」と、ご自身のblogで常にいち早く情報を提供してくれているのがScottぐーさん。
このblogで公開されている情報によると、今回公開されたライブラリソースは
- .NET Base Class Libraries (including System, System.CodeDom, System.Collections, System.ComponentModel, System.Diagnostics, System.Drawing, System.Globalization, System.IO, System.Net, System.Reflection, System.Runtime, System.Security, System.Text, System.Threading, etc).
- ASP.NET (System.Web, System.Web.Extensions)
- Windows Forms (System.Windows.Forms)
- Windows Presentation Foundation (System.Windows)
- ADO.NET and XML (System.Data and System.Xml)
今後LINQ、WCF、WFも公開すべくがんばってんよー、とのことです。
この方は「製品開発ジェネラル マネージャ」って肩書きを持つMicrosoftの中の人なんですけれども、先日訪日、特別インタビュー(LiveID要、日本語字幕つき、Silverlight要)を公開してくれています。
あ、あと、Ask the Experts!(MSDNオンラインイベント、LiveID要、日本語字幕つき)も公開されています。
中の人トップが何を考えているのか、知るにはいいチャンスかもしれません。
コメント
QFEは、日本語版には当てられないらしいです。
何人かの方がBlogで当てられなかったと書いてました。
#適用済みかは不明
ま、当てなくても使えてますので、大きな問題はないのかな?
という気もしますけどw
投稿者: とっちゃん | 2008年01月29日 14:38
> QFEは、日本語版には当てられないらしいです。
あー、やっぱり?
「当てられなかった」ってblogエントリなんかがいくつか引っかかってましたので、あるいはと思っていたんですが。
でもなー。
インストールモジュールの中を覗くと、1041のフォルダがあって、日本語のeula.rtfがあるんですよ。不思議ー。
ということで、自宅に帰ったらちょっと人柱になってみたいと思います。
投稿者: さるべーじ | 2008年01月29日 16:16