IDEについて考えたこと(続き)

きのうまでの話

きのうの続き。
プログラムの開発環境について書く。

オイラは普段、VisualStudioの恩恵にどっぷり浴しながら
C#を書くプログラマです。

今回macを買ったので、rubyやらFlashやら、もっと本腰を入れて
やってみようと考え中。

教養としてVimを覚えて、XCodeをインストールしてみた。
でも、当然ながらVisualStudioはないの。
さてどうしようか。←今ココ

IDE選び・・・の前に

候補はいくつかある。

これからしばらく、いくつか比べながら、自分の手に合った
開発環境を作っていこうかと思う。

Eclipseに言いたいこと

Eclipseは使ったことがある。
GoogleSketchUp自動化用のrubyを書く事が、rubyをやってる大きな理由なんだけど、
そのためにEclipseを使うことがある。

でもね、嫌いなのEclipse

動作ももさっとしてるし、オイラが何を間違えてるのか、
エディタでソース書きながらDeleteキーを押すと、ファイルごと消そうとするし。
高度に隠ぺいされてる割には、全てを任せられない危うさがあるのが、
どうにも好きになれない理由だと思う。

IBMの誰かが作ってくれた、SketchUp API用のSDKがある、というのが
Eclipseを使うモチベーションだったのだけど、
rubyJavaと違い、ほぼサジェストが効かないので、
IDEの意味がない気がした。

Vimの人たち

Vimを高度に使う人たちは、Vim一本でコードを書いたりするらしい。
秀丸C++コンパイルするようなもんですニャ。

自分がIDE難民であることに気が付いた今、
Vimでやるのもひとつの手じゃないか?と考えているのも確か。

つか、Vimってエディタであって、開発環境じゃないよね。

開発に必要なものを考えよう

IDE統合開発環境)とは、以下のパーツによって成る。

これらを『統合』したツールが『統合開発環境』だということか。
この中で、IDEを使わないと機能の実現が厳しいものは、いくつもある。

GUIエディタ
テキストエディタだけでは無理。
自動テスト実行環境
プライベートアクセサの自動生成、やってもらうには、
リフレクションとかしてくれるツールが必要。
ブレークポイントが使えるデバッガ
Vimでもできる』という噂もあり、未検証。
エディタ+コマンドでやったら、そんなぴたっと止まるわけなさそうなんだけど。

これが使えるから、IDEはやめられない。そう思う。

その一方

基本的にプログラムは、文字列で書かれている。
文字列は、自動化されていない部分は、手で入力しないといけない(当たり前)。

つまり、開発環境の中でも、テキストエディタは、
最も人間に近いパーツなのだということ。

たまにしか使わない機能は、多少使い勝手が悪くても、
大して生産性に影響しない。

しかし、ソースコードを手打ちする部分は、
プログラミングの大部分を占めるだけに、
ものすごく生産性に影響するんじゃないか。

エディタの鍵は、補完にあり

ただのテキストエディタにはなくてもいいけど、
ソースコードエディタには、絶対にあって欲しい機能がある。

コード補完機能だ。
VSならインテリセンスだ。Eclipseならサジェストだ。
Vimで言えば、オムニ補完だ。

これがないと、生産性が激減する。
ここが物足りなかったのが、EclipseRubyの最大の欠点だ。

ないものを、いかに楽に作れるか

SketchUp APIのライブラリなんてマイナーな存在は、
結局自分でSDKを作る必要があるだろう。

そうなった時に、『いかにカスタマイズしやすいか』という要素は、
生産性にとってかなり重大な問題じゃないだろうか。

そのため、オムニ補完のカスタマイズができるVimは、
非常に魅力的な選択肢となった。
インテリセンスに慣れたオイラは、コード補完にこだわる。
エディタはVimに決まり。

IDEVimが最強?

ここまで考えてきたら、
Vimを外部エディタにしたIDEでやれば最強じゃないか?』
という考えが生まれた。

ファイル群をひとまとめにしてくれるとか、
管理のしやすさを考えると、やっぱりIDEからは離れられないかも。
と思うオイラ。

今のところ、IDE競争はこんな感じ。

× Eclipse
もっさり感があって、感触が悪い。あんまりRubyは相手にされてない。
勝手がわからなくて落ち着かない。
Xcode
Appleだけあっておしゃれ。動作もさくっとしている。
やりたいカスタマイズができれば、本命かも。
NetBeans
まだ使ってない。インストールが失敗する謎。ねこび〜んがかわいい。
Eclipse使いが『遅い』と言うくらいだから、相当なのかも。

これから

NetBeansがインストールできないのをどうしよう・・・
RAMクリアして再挑戦してみよう。
買ったばっかのmacなのに、けっこうインストール失敗するので、
ちょっと悩ましい。

XCodeはもう少し調査。
どうやらRubyは使えるらしいので、問題はVimとの連携だけか。
デフォルトで画面のどこかに『Vim』って文字を見たので、
まあ大丈夫だろう。