6

Windows 環境から、C++ 開発用に Linux に切り替えることを考えていました。これは悪い考えですか?私の職場では、プロジェクトに Windows と Visual Studio を使用しています (一部の C# と Java も使用していますが、現在は C++ でのみ開発しています)。彼らが私を C# プロジェクトに参加させることにした場合、開発はまだ可能でしょうか (mono?)? この種の移行の難しさは何ですか?

私は彼らのプロジェクトに取り組むのに問題がありますか? その逆も同様ですか? プリコンパイル済みヘッダーなど (私たちはそれらを使用しています)、およびエンコーディング (タブ/スペース、行末など) に問題があるとどこかで読みました。

この切り替えがそれほど難しくない場合、どうすれば始められますか? IDE? vim+make?

ありがとう。

ちなみに、私たちは主にWindowsソフトウェアを作っています..


編集:ありがとう、それは理にかなっていると思います..

4

9 に答える 9

26

それは悪い考えです。少なくとも 2 つの理由が考えられます。

  • ソフトウェアを作成するのと同じ OS で開発する
  • Visual Studio のロック
于 2009-02-27T14:15:35.137 に答える
8

C++ および C# 向けに開発している場合は、Windows を使用してください。Visual Studio デバッガーは非常に優れており、ほとんどの Linux IDE とは比較になりません (Java 用の Eclipse を除く)。また、Linux を使用している場合は、別のコンパイラを使用する可能性があり、それによって非常に奇妙なバグが発生する可能性があります。

于 2009-02-27T14:17:27.630 に答える
2

mono での Windows フォームのサポートはまだ完全ではないため、あまり良い考えではありません。Linux の c# 開発者は通常、GUI に GtkSharp を使用します。これは、アプリに別の依存関係を追加し、Windows フォームとはまったく異なります。しかし、GtkSharp も悪くありません。特に、GTK のパッキング ボックス機能が気に入っています。これにより、コントロール (エラー、ウィジェット) の適切なサイズ変更がはるかに簡単になり、すべての画面 DPI 問題が自動的に解消されるからです。

ただし、既存のコードに、Linux には存在しない他の依存関係 (特に P/Invoke で呼び出されるアンマネージ コード) がある可能性もあります。そうなると、Linux での開発は無理かもしれません。

于 2009-02-27T14:19:28.780 に答える
2

現在、Windows と Linux の両方で開発を行っています。これら 2 つ (またはそれ以上) のプラットフォームで同じコードをコンパイルすると、vc++ によるコーディング エラーと gcc によるその他のコーディング エラーを見つけることができるため、非常に便利です。もちろん、最も重要なプラットフォームは、開発対象のプラットフォームです。アプリケーションを Windows で実行する場合は、同じプラットフォームで開発し、より多くのリソースを割り当てることができる場合にのみ、Linux などに移植してみてください。とにかく、開発中に移植性について考えるのは良い習慣です。それは、可能な限り標準的なソリューションを使用することを意味します

于 2009-02-27T14:43:18.957 に答える
1

多くの Linux が不足していて、チームや作業アプリケーションと対話するために Windows ボックスにとどまる必要がある場合は、CygwinGNU Win32 ツールをインストールしてください。

于 2009-02-27T14:46:18.120 に答える
1

私はLinuxでWeb開発を行うことに切り替えました。これが私が個人的に見つけたものです

(特定のソフトウェアを使用して)最終的に問題を引き起こさない正しいことを行うには、仮想マシンが必要です。Wine は、私が必要とするソフトウェアに対して安定するのに十分ではありません

また、私の特定のニーズのために、「システム フォント」全体が異なるだけで、Windows と UNIX/Linux の両方で多数のスクリプトの問題が発生しました。

勝つためにスイッチを入れ直します。私は LINUX が大好きですが、私のクライアントの大半が Windows と IE を使用している専門分野では.... 私は彼らが持っているもので実行する必要があります... これは生産性のために最も賢いと思います

(神からの命令ではなく、個人的な意見です)

ティム

于 2009-02-27T14:21:41.567 に答える
1

私は窓に固執することをお勧めします。Windows は、Windows 開発に最適です。Linux では、クロスプラットフォームのものや Linux 固有のもの (必要に応じて) を書くことができます。C# を学習するために Mono を試してみましたが、おもちゃの例では機能しましたが、.NET の一部では機能しませんでした。ウィンドウズに戻しました。Linux に切り替えるのが良い考えだとは思えません。気分を害するつもりはありません、これは私の意見です。

于 2009-02-27T14:23:13.980 に答える
0

Linux で完全に販売されている場合、VMWare は仮想マシンを実行するのに非常に適しています。mingw ツールチェーンを使用して Linux / クロスプラットフォーム プログラムをコンパイルし、単一の依存関係を追加すると (静的である可能性があります)、ウィンドウは表示されません。エラー。

于 2011-03-23T23:03:27.530 に答える