対新しいMicrosoft RoslynについてのInfoWorldのpress release昨日から:マイクロソフトロスリンのCodeDOM
「解体」のこの種の最も明白な利点コンパイラは、それが全体のコンパイル、実行プロセスがあることを可能にするということである .Netアプリケーション内で から呼び出されます。 Hejlsbergは、 がC#コンパイラにいくつかのコードスニペットを文字列として渡したC#プログラムを示しました。コンパイラ は結果として生成されたILアセンブリコードをオブジェクトとして返し、実行のために共通言語ランタイム(CLR)に渡された でした。 Voilà! Roslynを使用すると、実行時に コードを生成して呼び出す動的言語の能力がC#で得られます。ユーザーがにコードを入力することができます - 私はまさにそのしばらく前に書かれたASP.Netプロジェクトにおける実際の使用で
CSharpCodeProvider.CompileAssemblyFromSource
と.NET 4のリリース以降、これを行うことができました
テキストボックスを開き、参照するアセンブリ/名前空間を選択し、Windows Azure上のライブ環境コードテストのためにオンザフライでそのコードの出力を実行して表示します。
CodeDom
ローズリンの前処理者の一部ですか? Roslynの特別なメリットはCodeDom
以上ですか?
@Dustin:Roslynは他の言語をサポートしますか?例えばJavaScript(.NET)? – dbarros
@Dustin:これは、私の組織でコード品質を強化する完全なIDEエクスペリエンスを構築するのに最適ですが、手動コードレビューの完全な置き換えは見当たりませんが、かなりの品質向上が見られます。すぐに! –
誰かがRoslynベースのツールを作成してCodeDomを使用するコードをRoslynのSyntaxFactoryを使用するコードに変換していれば素晴らしいと思います(一部は.Net CoreがRoslynを持っていますがCodeDomはなく、 CodeDom) – Emyr