しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

dotNetConf 2015 Japan で喋ってきました

スライドを SlideShare にアップロードしておきましたが、何処に着地させるべきなのか悩みました。

以下、個人的に書きたかっただけの蛇足。

名前について

正直 DNX はダサい感が半端ない感じなんですが、冷静に考えると Microsoft のプロダクトはカッコいい名前は失敗し、ダサい名前のが成功している気がするので、ダサい方が将来有望なのかも知れないと思いました。*1

.NET Core について

デバッグ用 API に付いてどうなってんの?という話がありましたが、CoreCLR のリポジトリを見ると名前付きパイプを使ったデバッグ用インターフェースが用意されているみたいでした。

coreclr/src/debug at master · dotnet/coreclr · GitHub

ちゃんと Windows と Unix 向けにデバッグ用に PAL が追加されてます。

PAL について

CoreCLR と DNX はクロスプラットフォーム対応のために PAL (Platform Abstraction Layer) を追加して、大部分のコードを共有するように出来ています。Office と同じようなアプローチだと感じます。

DNX の PAL は dnx コマンド本体ですね。これが CLR / CoreCLR / Mono をホスティングすることで、マネージコードからはプラットフォームを意識することなくコードを共有出来ています。

Linux / OS X での DNX + CoreCLR について

Unix 向け PAL が実装されたので、Linux / OS X でも CoreCLR を使って DNX が動くようになりました。

ただし Nightly ビルドが MyGet で公開されていないので簡単には使えないですが。

まとめ

Visual Studio 2015 の RTM タイミングには Windows 向け CoreCLR (x64) と DNX は間に合うだろうけど、両方とも Linux / OS X 対応はまだまだかかるはず。ARM 対応が入ってくれると GUI が不要な組み込み系というか Raspberry Pi で簡単に使えて嬉しいんですけど。

CoreCLR と DNX は未来、少なくとも今ではない。けど、未来に全力で投資出来る Microsoft カッケーっす。

*1:Silverlight とか