【2020】おすすめIDEは?EclipseとIntelliJを比較
[AD] Scalaアプリケーションの開発・保守は合同会社ミルクソフトにお任せください
こんにちは。
この記事を読んでいる皆さんはおそらく、「Scalaをこれから始めます!」あるいは「最近始めました!」といった状態だと思います。
そして以下のような疑問をお持ちのことでしょう。
- Scala開発では何のエディタを使えばいいの?
- ScalaのIDEってどういうのがあるの?
- ScalaのIDEって何を選べばいいの?おすすめは?
この記事ではScala開発に使えるIDEの選択肢、選び方、違いについて解説します。
(※IntelliJ IDEAをインストールする手順はこちらの記事で解説しています)
エディタではなくIDEを使いましょう
「そもそもIDEとは?」という人もいますよね。
あらかじめ、エディタとIDEの違いについてかんたんに触れておきます。
エディタは、ファイルを編集するためのソフトです。
IDEは、言ってしまえばいろんな機能がついた便利なエディタです。
つまり結局はどちらもエディタです。
ただし、エディタとIDEは、使い始めの段階でのスタート地点が違います。
IDEは、普通の人が必要な機能が「最初から全部入り」です。
これに対してエディタは、ゼロから自分でカスタマイズする必要があります。
初心者にとっての近道は、IDEに用意されたさまざまな機能を試しながら、 Scalaでの標準的な開発スタイルを身につけていくことです。
したがって、結論としては、初めてScalaを開発するという場合においては、IDEのなかから選びましょう。
IDEとエディタの違いや、Scalaで使えるエディタについてはこちらの記事でさらに詳しく解説しています。
Scala専用のIDEはない
現在のところ、Scala専用のIDEはありません。
Javaに比べると開発者の人口が少ないことや、 そもそもJavaと組み合わせて使うことが多いことなどから、 「JavaのIDEのプラグイン」として実装されるのがちょうどよいのでしょう。
Scala開発で使えるIDEって何があるの?
さて、Scala開発で使えるIDEには具体的に何があるのでしょうか。
JavaのIDEで著名なIDEは以下の3つです。
- Eclipse
- NetBeans
- IntelliJ IDEA
いずれのIDEもScalaに対応しています。
Scalaへの対応状況を具体的に見てみましょう。
Eclipse(非推奨)
さっそく(非推奨)の文字が気になりますが、まずはEclipseの紹介をいたします。
Eclipseは、NPO法人のEclipse Foundationが開発するIDEです。
Java開発においては最も多くの人に用いられており、デファクトスタンダードのIDEです。
Scala用のIDEとして、Scala IDE for Eclipseという名前で配布されています。
スポンサー企業の社員が開発に従事しています。
Windows、macOS、Linux(CentOS, Ubuntuなど)に対応しています。
Webサイトもきれいな感じで整っていますね。
ただし、Eclipseには重大な問題があります。
Scala IDE for Eclipseの開発チームは4名が挙げられています(2020年)。
しかしこのページは長らく更新されておらず、開発元がLightbendへと改名する前の「Typesafe」名義のまま放置されています。
また、2018年1月に最新版がリリースされて以降、 2年以上GitHubリポジトリのmasterブランチに対してコミットがありません。
他方、Scalaにはまもなくメジャーリリースである「Scala 3」(コードネーム:Dotty)のリリースが控えています。 これではバージョンアップに対応できる見込みはありませんから、この先使うわけにはいきません。
詳しくはこちらの記事をご覧ください。
NetBeans(非推奨)
また、Java開発におけるIDEとしては、NetBeansを好んで使っている人も多いと思います。
私もJavaを開発していた頃には使っていたことがあり、個人的には非常に愛着のあるIDEです。
ただ、残念ながらNetBeansのScalaプラグインは機能もアップデートも不十分なため、初心者が使うべきではありません。
こちらも非推奨です。
IntelliJ IDEA
IntelliJ IDEAは、営利企業のJetBrainsが開発するIDEです。
比較的新しいIDEで、Java開発においては愛好家が増えています。
Scala開発においても使い勝手の良さに定評があります。
ScalaはJetBrainsが公式にサポートしています。
Eclipseと同様に、Windows、macOS、Linux(CentOS, Ubuntuなど)に対応しています。
価格
IntelliJは概ね無料で使用できますが、一部の機能を使用するには有料版を購入する必要があります。
Play Framework、Akka、Scala.jsのサポートが必要な場合、あるいはそれ以外の専用機能が必要な場合はUltimate版を使用することになります。
UI
IntelliJはそのデザイン性が目を引きます。
TwitterやmacOSがナイトモード/ダークモードに対応するはるか以前よりダークテーマに公式対応しています。
また、高解像度のウィンドウにも対応しています。
結論:IntelliJ IDEAを使いましょう
既にJava開発などでEclipseをお使いになった経験のある方にとっては、引き続きEclipseを使いたい気持ちがあるでしょう。
ワークスペースの概念、使い慣れた機能レイアウト、キーボードショートカット、これだけでもEclipseはとても魅力的に見えてきます。
しかも無料です。
しかし、IDEとしての完成度の差、さらに更新されていないという事実を鑑みれば、進化の早いScalaを扱えないことは目に見えています。 今からScalaを始めるのであれば、当サイトではIntelliJ IDEAを使用することを強くおすすめします。
IntelliJ IDEAをインストールする手順はこちらの記事で解説しています。