より少ないIDEでより多くの言語で開発する方法


8

.net、C#、Java、ActionScript、JS / CSS、およびScalaやHaskellなどの関数型言語で開発できるようにコンピューターをセットアップしたいと思います。ただし、これを行うには、フル機能のIDEを最小限に抑えて、/コンピューターのハードドライブ領域を占有するプログラム/複数のIDEを同時に実行するようにしたいと考えています。

学習/使用する必要のあるフル機能のIDEの量を最小限に抑えるために使用できるプログラム。(たとえば、Eclipseがこれらすべてのフレームワークを処理できる場合、それは有効な答えになります)

編集:この質問はまだ何年も後にヒットしているようです。今日(2018年)私はVisual Studio Codeを「emを支配する1つのIDE」として使用しています。


現在何を使っていますか?
Kevin D

8
リソースの節約があなたの関心事であるなら、私はEclipseが答えであることを疑います。
back2dos

5
私が気にしているリソースは、私のコンピュータよりも私の脳です:)
ボブ

5
そのすべての開発をメモ帳で実行してみて、あなたの脳がどのように機能しているかを教えてください:-)
Thomas Stock

4
経験豊富なプロなら、メモ帳ですべてのニーズに十分対応できるかもしれません
Pankaj Upadhyay

回答:


2

Jetbrains社には、人間工学に基づく原則とキーボードショートカットが同じIDEのスイートがあります。彼らはあなたが話しているすべての言語をカバーしています。しかし、それらのほとんどは無料ではありません。

だから私の提案は:


1
彼らにはサポートのための強力なコミュニティがありますか?Jetbrainsソフトウェアに関する「プロジェクトを設定するには、ロケットサイエンティストである必要がある」という発言を聞きました。
ボブ

彼らは本当に良いです。私はツイッターで暴言に答えを得ました。しかし、あなたの言うとおり、プロジェクトのセットアップは最初は少し変ですが、Eclipseの場合ほどではありません。
Simon Jodet

R#はIDEではありません。Visual Studioの拡張機能です。
アンディ

22

vimまたはemacsを学ぶ。どちらの言語でも、ほぼすべての言語をプログラミングできます。一部のIDEが提供する松葉杖はありませんが、実際には必要ありません。脳への依存度を高め、インテリセンスを低下させると、より優れたプログラマーになることができます。

両方ともvimemacsコーディングを容易にするための多くの機能と拡張機能(またはプラグイン)を備えています(APIに関連するものを含み、「盲目的に記憶する」必要はありません)。多くのプログラミング言語(アカデミック言語も含む)には、emacsモードやvimプラグイン、拡張機能があります。そして、多くのLinuxディストリビューションがこれらをパッケージ化しています。


39
私の脳は、APIを覚えようとするよりも使い方が優れています。
ボブ

11
アーメン千回、@ボブ。私が扱う必要があるAPIのメソッドシグネチャ、戻り値の型、およびクラス階層に加えて、より多くの容量を使用できるので、インテリセンスのため、私はより優れたプログラマーです。私の意見では、これは過去15年間で最大の生産性向上です。
アダムクロスランド

5
EmacsはCEDETをインテリセンスに提供しますが、「スマートコード補完」と呼んでいます。
jwernerny

3
IDEの使用に関する投稿者の見方には多少は同意しませんが、これは、優れたIDEを持たない、新しい、またはあまり人気のない言語に進むための方法です。OPはScalaとHaskellを考えており、他の非主流の言語を試してみたいと思うかもしれません。この場合、vimまたはemacsが最良の選択です。
David Thornley、2011年

5
Java(およびC#)にはIDEが必要です。彼らはたくさん助けてくれます。これは、言語が進むにつれて、彼らがかなり官僚的だからです。他の言語 IDEをほぼ同程度に必要としないため、vimとemacsは優れた選択になります。
ドナルフェロー

13

私はすべての開発に最適ではないIDEを1つ使用しようとはしません。単一のIDEをハッキング/トゥイーキングするのではなく、言語に最適なIDEを学ぶことに時間を費やしたいので、使用するつもりのなかった何かに使用できるようにします。

ここには特効薬はありません。

.NET開発にはVisual Studioが必要です。Flash開発にはAdobeツールが必要です。

JavaとJS / CSSには、Jetbrains IntelliJ IDEAとWebstormをお勧めします。ツールは同じベンダーによって作成されているため、類似しており、かなり機能が豊富ですが、学習曲線はかなり良好です。それが本当にあなたの懸念の1つであるならば、彼らはまた、それほど多くのディスクスペースをとりません。

FinnNkが指摘したように、ほとんど(すべて?)のIntelliJ IDEをVisual Studioキーボードショートカットを使用するように構成できます。または、Visual Studioを構成してIntelliJキーボードショートカットを使用できます。


ありがとう。IntelliJ IDEAは、Actionscript開発も行います。したがって、Visual StudioとIntelliJまたはEclipseが必要になります(これまでのところIntelliJ ideの学習は少し苦痛でしたので)scala / Haskellはどこに適合しますか?
ボブ

ScalaHaskellにはEclipseプラグインがあり、Netbeansにも同様のものがあったとしても驚かないでしょう。
TMN

Scala / Haskellの経験はありません。繰り返しますが、「最高のscala ide」のようなものをググって、どれがあなたの要件に最もよく合うか見てみます。PS:WebStormをスキップして、Visual StudioでJS / CSSを開発できます。これはWeb開発に適したIDEであり、Resharperアドインを使用すると、JSおよびCssでオートコンプリートを取得できます。(これに対応した無料のプラグインもあります。)
Thomas Stock

@TMN Netbeans Scalaプラグインが開発中
yannis

1
IntelliJ IDEのほとんど(すべて?)をVisual Studioキーボードショートカットを使用するように構成したり、IntelliJキーボードショートカットを使用するようにVisual Studioを構成したりできることを付け加えておきます。
FinnNk

6

Eclipse は、あなたが言及するほとんどの言語を処理できます。

前述のプラグインの多くはさまざまなアルファ状態であり、それらすべてでEclipseインスタンスを実行するとハードウェアに多大な負荷がかかるため、Eclipseは有効なオプションではありません。

優れたハードウェアがあっても、プラグインは特別なIDEが提供するすべてを提供することはめったにありません。また、複数のIDEを実行する正当な理由がないと思います。同時にいくつのプラットフォームをコーディングできますか?異なる言語で書かれたコードを読むことや、かなり小さなプログラムを書くことだけが必要な場合は、印象的な数の言語で構文の強調表示をサポートするNotepad ++を選択できます。

しかし、実際にあなたが言及する言語でプログラミングするには、さまざまなIDEを使用することをお勧めします。

Adobe Flash BuilderとAptana StudioはEclipseに基づいているため、これらを使用すると、少なくとも同様の IDEが得られます。


ありがとう。私はウィンドウを閉じるのがひどいです。私は仮想パックラットです。:(
ボブ

1
C#の改善は、ほぼ8年前から死んでいるようです!!
ニュートピア11:13:48

@Newtopianええ、そうです:)とにかく、答えのポイントは、さまざまな理由ですべてにEclipseを使用しないことでした。C#プラグインの欠如をそれらに追加することができます...
yannis

@Bob Linux + Gnomeとデュアル30インチ画面(4台のデスクトップを使用)では、十分な画面
領域を確保

@ボブ、タイリングWM(例:stumpwm、ratpoisonなど)を使おうと心に思いますか?
SK-logic

2

私は個人的にEclipseが最高の多言語IDEだと思います。...優れたJavaサポートJavaを除いて、プラグインとして利用できる他のほとんどの主要言語のかなり成熟した開発サポートがあります。

ここには、その記事が書かれてから拡張された言語の長いリストがあります。

また、重要なのは言語だけではありません。次のことも考慮する必要があります。

  • AntやMavenなどのビルド/依存関係管理ツール
  • ソースコード管理(git、CVS、SVNなど)
  • リソースファイル管理(XML構成、画像など)
  • プロジェクト管理ツール(バックアップ、ドキュメント、タスク管理など)

これらすべてを考慮に入れると、単一のプライマリIDEに固執することは間違いなく勝利です。


1

それらが存在する言語の場合、クラスIDEの最高のものを使用するのが最善です。実際にはそれほど違いはありません。提案については、他の回答を参照してください。

そうでないものについては、emacs(ファイルシステムブラウザー、メールおよびニュースリーダー、ゲームプラットフォーム、誕生日グリーティングジェネレーターなどとしても機能します)などのより重いテキストエディターを使用することをお勧めします。 。多くの場合、これらには適切なプラグイン/設定/モードがあり、より単純なIDEが提供するもののほとんどを得ることができます。


1

IDEの使用法は聖戦の話題であることに注意してください。

仕事に最適なツールを使用してください。IDEが言語Xでは得意で言語Yでは得意ではない場合は、それをXにのみ使用し、Yには何かを取得します。他のほとんどのコンピューターゲームと比較して、市販されているIDEはハードドライブでもシステムでもありません。 RAMは処理できません。新しい言語を試してみると、IDEで簡単に遊び始めることができるので、仕事に合った言語を入手することを恐れないでください。Android Javaはその良い例です-味だけが欲しければ、Eclipse / Androidほど簡単に足を濡らすことはできません。


ありがとう、同意します。しかし、私は今十分に、そして私が尋ねた他の要件に合うように探しています。学びながら成長することを目指しているので、自分が好きなものとそうでないものを見ることができます。
ボブ

1

これが素晴らしいアイデアだとは思いません。ある言語から別の言語への切り替えは、通常、完全なコンテキスト切り替えであり、そのコストは、その言語で動作するように合理化されたIDEによってのみ補償できます。

もちろん、emacsはありますが、それを本当に理解するために5年間を投資するつもりがない限り、ほとんどの言語でせいぜい平凡な多言語IDEを見つけるのは難しいでしょう。

私のおすすめ:

  • C#用のSharpDevelopとActionScript用のFlashDevelop(そして、必要に応じてhaXe)。FlashDevelopは主にSharpDevelopを使用して記述されているため、動作は比較的一貫しています。特に、FDはフットプリントが非常に低く、非常に高速なオートコンプリートとUIを備えており、私のマシンでは5秒強で起動します。
  • JavaとScalaは1つのIDEで完全に動作します。それがIntelliJであろうと、NetBeansであろうとEclipseであろうと、個人の好みや宗教の問題です。
  • CSSのサポートは、実際にはほとんどのIDEに存在します。おそらく、zenコーディングを可能にするHTMLエディター(FDが可能)を使用することをお勧めします。できれば、とにかく使用しているエディターの1つを使用して、同じエディターでCSSを記述します。同時に、ツールセット内のどのIDEがLESS cssをサポートしているかを確認することもできます。これは、本当に時間の節約になるためです。IDEのサポートを利用して、書く量を減らすか増やすかを選択する場合、前者の方が有利です。
  • JSは、ある程度まですべてのIDEでもサポートされています。あなたはFlashDevelopでこれを行うかもしれません。または、FDで十分サポートされているhaXeを実際に使用することもできます。あるいは、CoffeeScriptを調べて、それに適したIDEを見つけることもできます(Eclipseには適切なプラグインがあり、他のIDEにもある可能性があります)。

0

言語/言語バンドルごとに個別のツールを用意するのが最善であると私は考えています。ただし、一部(CSS + JSなど)の場合-IDEを使用しても意味がありません-構文を強調表示するテキストエディターで十分です。

Windowsの場合-Notepad ++を試してください。Linuxでは、emacsvim(独自の学習曲線を持つ)、または単にgeditです。

最新のNetBeansを見てください。クロスプラットフォームは多くの言語をサポートしていますが、少し遅くなる可能性があります。Aptana Studioは、私が現在Web開発に使用しているものです。


0

Microsoft Langaugeサーバープロジェクトを見てください。そのアイデアは、言語固有の詳細をエディター/アイデアから切り離そうとしているということです。したがって、たとえばC#またはElixirの言語サーバー実装と、VisualStudioおよびEmacsのクライアントを作成でき、両方のエディターですべての言語を使用できます。

すべての言語がまだサポートされているわけではありませんが、多くの言語がサポートされており、将来的には編集者/ IDESと言語が互いにサポートし合うことがはるかに容易になります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.