私のアプリケーション全体(20MBの実行可能ファイルを備えたかなり大きい)は、アンマネージC++で記述されています。マネージコードを使用する利点がはっきりとわかるので、アプリケーションにマネージコードを導入したいのですが、どこから始めればよいですか?
C ++ / CLIの使用を簡単に開始して、アプリケーションの他の部分とリンクできますか?(C ++ / CLI構文はかなり「エキゾチック」に見えますが)。
または、C#に移行する方が良いのですが、これをアンマネージC ++コードと「リンク」するための最良の方法は何ですか?
/clrオプションを使用してすべてのC++コードをコンパイルすることは意味がありますか?これは機能しますか?
マーシャリングについて心配する必要がありますか?これはオーバーヘッドをもたらしますか、それともパフォーマンスを低下させることなくマネージドとアンマネージドを切り替えることができますか(20年前にFortranとCを混合したときと同じように)。パフォーマンスは、数ギガバイトのメモリを処理することがある科学的なアプリケーションであるため、私のアプリケーションでは非常に重要です。
または、ユーザーインターフェイスを再設計し、これをC#で記述し、アプリケーションの残りの部分(計算ロジック、ビジネスロジック、データベースインターフェイスなど)をアンマネージC ++で保持することだけが意味がありますか?
私のアプリケーションは時々数ギガバイトのメモリを処理する必要があるので、64ビットのバリアントがあります。64ビットのマネージコードを使用するのは簡単ですか?それだけのメモリが使用されている場合でも、ガベージコレクタは効率的ですか?
簡単に言うと、どこから始めればよいですか?
パトリック