作業上の制限により、当面はVisualStudio2010を使い続ける必要があります。同時に、私は個人的なコーディングでAsyncについて学んでいます。最新の非同期CTPは、C#5.0の非同期言語機能と完全に一致していますか?そして、Async CTPをインストールすることはVS2010でAsyncを使用する正しい方法ですか?
3 に答える
非同期CTPは、async
Visual Studio 2010で使用する唯一の方法です。ただし、async
.NET 4.5 / Visual Studio 2012に組み込まれたのはそれではなく、CTPのいくつかのバグが最終リリースで修正されています。CTPのreadmeによると、VisualStudio2010ではこれらのバグ修正は行われません。
「現状有姿」のライセンスに関する注記
Async CTPライセンスは、実稼働環境での自己責任での使用を妨げるものではありませんが、使用しないことをお勧めします。このCTPの目標は、意図した非同期設計に関するフィードバックを収集することだけです。実稼働環境で使用するように設計または構築したり、実稼働環境で使用するために必要なほど徹底的にテストしたりしていません。また、実稼働環境で使用するには欠陥が多すぎると考えられます。Async CTPに関するフィードバックに感謝しますが、Async CTP自体に修正を加える予定はありません。修正は、最終的にサポートされるリリースされた製品にのみ表示されます。
VS 2010がどうしても必要な場合は、最初にAsync CTPをインストールしてから、.NET 4.5(ランタイムとSDKの両方)をインストールします。Visual Studioで開発しますが、スタンドアロンコンパイラを使用してビルドします。
.NET4.5が.NET4の上にインストールされる方法と、それがもたらす可能性のある課題を考慮して、私はあなたの職場環境をあなたの個人的な開発環境から可能な限り分離しようと思います。
VS2010とVS2012を同じマシンにインストールすることができます。非同期CTPを使用するよりも、次のことをお勧めします。
- 作業IDEの汚染が少ない
- C#5の最新バージョン
- VS2012を使用する場合のすべての利点
ただし、可能であれば、代わりにVMまたは別のマシンで開発する方が安全だと思います。
最も魅力的でないオプションは、CTP、IMOを使用することです-正直なところ、私はその面でリスクしか見ることができません。
キーワードは同じですが、非同期CTPは最終的なC#5.0の実装と完全には一致していません。
実際のビジネスニーズが.NET4.0で実行できるアプリを作成することである場合、推奨されるアプローチは、非同期ターゲティングパック(NuGetから入手可能)でVS2012を使用することです。
この構成では、開発マシンには.NET 4.5とVS2012がありますが、ソリューションビルドから生成されたバイナリは.NET4.0と互換性があります。
これにより、非同期言語機能が完全にサポートされます。これは、VS2012 +非同期ターゲティングパックがまったく同じ公式コンパイラを提供し、CTP品質よりも高いためです。