チームのすべてのメンバーが同じIDEを使用する必要があることを強制することは理にかなっていると思いますか?
たとえば、すでにチームに参加しているすべてのエンジニアはIDE Xを使用します。2人の新しいエンジニアが来て、代わりにIDE Yを使用します。今数年。
「混合IDE」チームでの経験はありますか?もしそうならそれは何ですか?
「Continuous Buildサーバーで使用される」「公式の」ビルドシステムがすべて同じである場合、チームの各メンバーが必要なツールを選択できなかった理由はわかりません...
チームが特定のIDEでのみ利用可能な特定のプラグインに依存している場合、同じ開発プラットフォームの下で全員を統合することだけが理にかなっています。私と同じIDEを持っている場合は、開発の問題を抱えている人を支援する方が簡単です。一方、慣れていないインターフェースで誰かの画面を読む場合は、少し時間がかかります。
欠点の1つは、ペアリングするときにキーボードをスムーズに交換できないことです。主流のIDE間では、これはおそらく大きな問題ではありませんが、1人がEclipseに慣れ、もう1人がvimに慣れている場合、不一致が発生します。 Eclipseユーザーは完全にvimを使用できない可能性がありますが、vimユーザー(それは私です)は、Vanilla Eclipseを使用することの恐ろしい遅さに息を吐きながら多くの時間を費やしています。
とはいえ、私はまだ自分でvimを使用したいのです。あなたのペアがあなたの1人だけが長期間「運転」することに満足していれば、それはうまくいきます。
そして、Eclipseをviのように動作させるためのプラグインがあることは知っていますが、Eclipseを好きなように動作させている誰かと一緒に座って、そのプラグインをインストールしないペアリングについて話しています。
Linuxカーネルのすべての開発者に同じIDEを使用するように強制することはまったく意味がありません(または、任意のIDEをまったく使用します)。
コマーシャルIDEをテキストエディター「複数のIDE」で時々補足して数える場合を除いて、私は混合IDEの経験はありませんが、いくつかの長所と短所を考えることができます。
長所
短所
しかし、これは時間とともに変化しました。 10年か15年前、私が働いた場所にはそれほど多くの選択肢がありませんでした。 (はい、多くの編集者がいましたが、彼らは「選択」ではありませんでした)。 15年前に働いていたお店は(当時も!)とても古い学校で、viは編集者でした。選択の余地ない。最初の1か月の罵倒と罵倒の後、私は実際にそれが好きになったので、これは実際にはかなり役に立ちました。
今日、多くの選択肢があり、それぞれに多くの利点があります。
私の個人的な経験では、IDE-rubyMine-'back'をvi(m)に切り替える前の数年間使用しました。Ruby IDE for(ダックタイピングおよびその他の動的機能))を書くのは非常に難しい言語であり、その結果、IDEは遅くなる、および/または最新の最高速のマシンを必要とする傾向があります。
これを強制できる理由があります。単にビジュアルスタジオとemacs/vimを検討してください。 Windowsと同様に、Visual Studioは行末に\ rを追加します。これはemacs/vimの表示を混乱させます。また、タブは問題を引き起こします。私たちの問題は、開発者がLinuxで作業しているにもかかわらず、ソフトウェアアーキテクチャがビジュアルスタジオで快適であることです。彼はかつて、私たちがファイルを適切にフォーマットしないと言って私たちをののしりました。しかし、これがデフォルト設定の問題が原因であると彼が発見したとき、私たちは全員同じ形式に同意しました。
誰かが私に特定のIDEを使用することを強制した場合、私は気分が悪くなることはありません。チームにとって良いことは何でも、私はそれを尊重し、それに応じて妥協します。
ええと、私はいくつかの経験を持っていますが、Windows/UnixとC++/Javaの混合チームの一部であるという点でそうです。これは、誰もが他のIDEで快適に作業できるか、またはIDE Yに精通していない誰かが作業する必要がある状況になることはないのであれば、問題ではないと思います。他の男の(つまり、IDE Yの男)システム。
誰もが望む場合はそれで結構ですが、別の人が別のエディター/ IDEを使用することもできます。私がチームで何か大きなことをしている場合、人々に私の好みのエディター以外のエディターを使用することを強制してほしくありません、そして私が一人だとは思えません。特定のエディターの使用を強制しない限り、人々は状況に最も満足するでしょう。
ところで、Emacs!
誰もが「同じ」IDEを持っている必要はないと思いますが、誰もが「サポートされている」IDEを持っているのはいいことです。
たとえば、IDEがコードレビュープロセスに統合されており、コードのコメントと更新が行われている限り、サポートされているプラットフォーム上に全員がいることは理にかなっています。
会社が Rational Team Concert などのコラボレーション環境を使用していて、1人または2人の人がサポートされていないIDE(または別のバージョン)を使用したいが、他の全員が使用している場合)互換性のあるものでは、サポートループの外にいることを選択した人々にとって、人生は難しいかもしれません。