未分類

なぜ、テキストエディタじゃなくてIntelliJ IDEAを使うか。 #jbugj

なぜ、IDEじゃなくてVimを使うか。 – Qiitaのパロディです。

ここに書かれていることは私の「なぜ、テキストエディタじゃなくてIntelliJ IDEAを使うか。」の理由なので、IntelliJ IDEAユーザー全員同じ理由とは限らないのでご注意を…。
また、だいぶ省略しているので、IntelliJ IDEAを全くしらないひとには分からないところも多々あるかもしれません、ご了承を…。
IntelliJ IDEA以外のIDE(NetBeans、Visual Studio、Eclipseなど)では同じようなことが実現できるかもしれないので、必ずしもここであげたことが正しいわけではないですのでご勘弁を…。
1. Mac、Linux、Windowsのどれでも使える。
MacやLinuxやWindowsユーザーは新しいマシンを手に入れたら真っ先にIntelliJ IDEAをインストールします。
IntelliJ IDEAは30億のデバイスで動くJavaで出来ておりマルチプラットフォーム対応なのでさくっとインストールできます。
「Windowsユーザなので、Macに乗り換えたらIntelliJ IDEAを使いたい」とかTwitterなどでよく見ますがWindowsでも普通に使えます。

また、IntelliJ IDEAをソースコードからビルドするのも割と簡単です。
古代の技術であるantのスクリプトが置いてあるのでGitHubのリポジトリからチェックアウトしてantコマンドを叩けば大抵の環境でビルドできるでしょう。
リポジトリのクローンにxx分くらい、ビルド時間はxx分くらいですが普通自分でビルドする必要はまずないでしょう。(リポジトリがデカイのでブログ記事書いている間にはクローン完了しなかった)

2. 起動が速・・くはない。
IntelliJ IDEAの起動時間は数秒という単位で起動し終えます。
テキストエディタだと起動時間がミリ秒単位かもしれませんが、一日に何度も起動するものではないので私には耐えられますね。

3. キーマッピングが自由自在。
IntelliJ IDEAやその他のIDEではある程度キーマッピングの設定ができると思うのですが、大抵は修飾キー(CtrlやAltキーなど)が必要です。
その点、IntelliJ IDEAは修飾キーなしのマッピングも自由に出来ます。
しかしIntelliJ IDEAはVimと違ってモードという概念がないので普通そういうキーマップをすると死にます。

4. 他のテキストエディタやテキストエディタに比べて、カーソルが速く移動できる。
他のIDEやテキストエディタでは、Ctrl+矢印キーなどで単語の末尾やHomeキーで行の先頭に移動できたりしますが、
IntelliJ IDEAはどこでも検索(Search Everywhere、Shift2回で起動するSpotlightみたいなの)でどこへでも移動できます(多分)。
クラス名、シンボル名、ファイル名、アクションなどなんでも素早く呼び出せるので超便利。

5. ホームポジションをあんまり崩さないで操作ができる。
IntelliJ IDEAのデフォルトのキーバインドは、基本的にホームポジションを崩さないで操作ができます。
簡単な所でいうとCmd+1でプロジェクトペインへ移動、Alt+F12で内蔵ターミナルを起動です。内蔵ターミナルからVimやEmacsを起動することもできます。他に、マウスでメニューを選択してあれこれすることは操作を工夫すればほぼないです。
大抵、どこでも検索から実行することができます(これは当然キーボードから操作できます)。

6. 検索、置換が強力(変態)。
私の実感ではIntelliJ IDEAは他のIDEに比べて検索、置換が強力(変態)だと思います。
検索、置換が強力なおかげで、「コメントに含まれる特定の文字列の置換」ばども一発で行えたりします。
当然IntelliJ IDEAなので文字列の置換は、ダイアログボックスの表示(Ctrl+Shift+F)も置換(Ctrl+Shift+R)の実行もキーボードから行えます。

7. Postfix completionという機能が便利過ぎる。
メソッド呼び出しなどの表現を書いた後、インテンションアクションを実行して変数を導入とかよくやりますが、IDEA 13.1で導入されたPostfix completionを使うとアクションを呼び出さずとも変数の導入やif文の構成などが行えます。上から下に、考えるがままにコーディング出来るので超便利。
IntelliJ IDEA 13.1のPostfixコード補完 | JetBrains ブログ

8. 英語ドキュメントやヘルプが豊富。
まぁ、次の「9. IntelliJ IDEAコミュニティがやばい。」に関連しますが、IntelliJ IDEAに関する英語のドキュメントやブログ記事が一杯あります。
日本語ですとIntelliJ IDEA Advent Calendar 2013というのもあります。これだけで日本語のブログ記事が25個あることになります。とても便利です。
また、IntelliJ IDEAの仕様はヘルプであるといっていいくらい、IntelliJ IDEAのヘルプは充実しています。
これもほとんど日本語に翻訳されていませんので英語の勉強になります。

9. 日本のIntelliJ IDEAコミュニティがやばい。
また、FacebookのJetBrains IDEというコミュニティにはコアなJetBrains IDEユーザーがたむろしているので、ここに質問をなげれば大抵回答が返ってきます。とても便利です。
あとは、Twitterで
#jbugjというハッシュタグをつけてツイートするとIntelliJ IDEAについて何か疑問を書けば大抵@masanobuimaiが答えてくれます。これもとても便利です。
(私もですが、Twitterでハッシュタグ「#jbugj」の検索は常にしています。

10. ある意味マルチプラットフォームなIntelliJというプラットフォーム。
IntelliJ IDEAが入っていればMac、Linux、Windowsのどれでも使えるIntelliJ IDEAのプラグインはとても便利です。

11. 設定ファイルを読む必要はない
設定ダイアログを全文検索できるので、かゆいところの設定箇所もすぐに見つけられます。

12. 多言語サポート
私はほとんどの言語(JavaだろうとPHPろうと)をIntelliJ IDEAで書く人なんですが、IntelliJ IDEAはほとんどの言語のシンタックスハイライト、コード補完、リファクタリング、フレームワークをサポートしています。
(さすがにリモートのテキストファイルをチョロっと変更する時などは内蔵ターミナルでsshログインしてvimをしょうがなく立ち上げたりはしますけどね…)

13. UIがどんどん改善されていく
アップグレード毎にUIが改善されているのかなんなのか意味不明に変わっていく製品があります。
IntelliJ IDEAは毎回迷いはしない程度に少しずつ、でも着実にUIが進化していきます。
あと、各言語ごとにIDEの使い方を覚えるのもメンドイのでIDEAで統一できるのはいいですね。

終わり

とりあえず、私の「なぜ、テキストエディタじゃなくてIntelliJ IDEAを使うか。」の理由をあげてみました。
ほかにもまだまだあると思うのですが、まぁこれが主な理由かなっと思います。

関連記事:
なぜ、IDEじゃなくてVimを使うか。 – Qiita(パロディ元です)
ココが好きだよIntelliJ IDEA – 便利機能10選 #jbugj – #侍ズム