データの読み取り、処理、および表示に使用されるツールを開発しています。C++/C# の選択について混乱しています。私は C++ コンソール プログラミングのみを行いました。GUI も C# もありません。
私はVS2010を使用します(必須)。
私はウェブでたくさんの読書をしました。高パフォーマンスに関しては、C++ が最良の選択であることを理解しています。必要なものをリストします:
- GUI
- ファイルの読み取り (1 つのファイルは約 25 MB で、合計約 5000 枚の画像が一度に使用されてさらに処理される可能性があります)
- データの処理。主に算術演算。
- データを表示します。これらも重いデータになる可能性があります。(~ GB)。これにはOpenGLを使用することを考えています。
私は VC++ の下で Windows フォーム アプリケーションから始めました。私はGUIを作成しましたが、かなり速かったです。ファイルの読み取りに問題がありました。私の周りのほとんどの人は MFC (ダイアログ ベース) を使用しています。しかし、彼らは主にファームウェアのプログラミングに取り組んでいます。彼らは、MFC で開発することを勧めました。しかし、生産性が低下していることに気付きました。
あとは何を使うかです。私の質問は次のとおりです。このツールが実行するはずのタスクについては、MFC に行く価値がありますか、それとも C# (または C++ CLR) に移行する方がよいでしょうか。パフォーマンスに関して大幅な改善が得られれば、時間は最大の懸念事項ではありません。
これは開発の最初の部分です。後で、拡張する必要があります。それを念頭に置いて、将来の見通しのために何が良いか。(この情報が役立つ場合は、処理に CUDA を使用する必要があるかもしれません。)
私がはっきりしていることを願っています。親切に優しく、必要に応じて詳細を尋ねてください。
編集:
明確な回答をありがとう。読み取られるデータはバイナリ イメージです (各 25 MB~ -35 MB~)。何千もの画像が積み重ねられて処理されます (一度にすべてではなく、ピクセルごとに)。私は MATLAB で実装したので、プロセスについてかなりのアイデアを持っています。主に、統計解析とフーリエ解析がデータに対して行われます。最後に、点群が生成されます。PCL (C++ の点群ライブラリ) を使用することを考えています。現在 MATLAb で表示しているので、これらはそれほど大きくありません。将来的にはファイルが大きくなる可能性があるため、C++/C# 環境に移行しています。表示されるデータには、ポイントの選択、その特定のポイントのプロパティ/プロットなどを表示するオプションの表示などの機能が必要です。グラフィックスは表示するのに重くはありませんが、より重要なのは機能を選択する機能です。