Connect(); // 2015がありましたね。
昨日、Connect() 初日の基調講演に合わせて、日本では深夜ニコ生放送「深夜に盛り上がれ MS開発者イベント『Connect(); // 2015』生放送」をやってたわけですが。
「どのくらい出番あるかわからないけどいて」とか言われて待機してたはずが、結局丸ごと画面に映っていたような…
まあ、全体の様子は亀淵さんのとこでも見ていただいて。
.NET Core RC
C#/.NET的に影響があるのは、.NET CoreのRC提供開始。
RC(バグ修正とかのぞいてもう変更しない)でGo Live(製品に使っても構わない状態)になりました。オープンソースでソースコードがMITライセンスだからって、自前でソースコードとってきて、問題出たら自分で直すなんてそうそうやれないわけで、「ビルド済みバイナリをマイクロソフトがサポートします」的な意味で、RCをもってGo Live。
--native オプション
Connect() キーノートのデモの中で、
dotnet compile -o output --native
とかコマンドを打ってました。--nativeオプション。
事前コンパイル(AOT)する機能も提供するみたいですね。
ちなみに、まあそもそもJIT自体の説明してなかったなぁと思って記事追加:
Windows デスクトップだとそれなりにJITのメリット高くてずっとJITだけ提供してきたわけですが、Linux上とかだとAOTの需要があるだろうってことでしょうか。
ちなみに、.NET Nativeとは別系統。
-
.NET Native
- 単にAOTだけじゃなくて、いろいろUniversal Windows Apps向けにガチガチに最適化
- シリアライズとかP/Invokeのコードをビルド時に生成(通常は動的にやる)
- XAML中の動的な処理を自動的に判別して必要な型情報を残す
- アセンブリをまたいだ最適化までする
- Visual C++コンパイラー(要するに、マイクロソフトが長年Windows向けに最適化しまくってる高性能コンパイラー)技術を使ってネイティブ コード生成
- .NET Coreの --native オプション
みたいな感じのはず。たぶん。