WindowsでRails開発をやるときに私がぶち当たった問題。

  • Railsの起動が遅い(20秒くらいかかる)。これはテスト駆動開発においては致命的なスピードです。テスト実行する度に20秒待たされるわけですから。
  • Windowsのコマンドプロンプトの文字コードはSJISだけど、Railsは基本UTF8なので RSpec等のテスト実行時にメッセージが文字化けするので、即座にログメッセージを確認できない。コマンドプロンプトの文字コードを変更するとRSpecで不具合が発生したような、、、。
  • 同じくWindowsとLinuxのコマンドプロンプトでは使い勝手に雲泥の差がある。タブ、/、ファイルに実行属性をつけられないため、いちいち 先頭に ruby と打つしかない、など、、。
  • gemなどで公開されている便利なライブラリ、ツールがWindowsに対応してないものがある。ディプロイツールCapistranoが使えないは致命的。
  • エディタTextMateが使えない。eTextEditorはいいのですが、完全にTextMateのようにはいかない。viは嫌だ。
他にもあるかもしれませんが、とりあえずすぐに思い浮かぶのはこんなところです。
結論としては、WindowsでRailsの開発をやるべきではない、ということになるのですが、実際の現場ではそういうわけにも行きません。
仕方ないので、私は、
  • エディタ: TextMateクローンのeTextEditor。EclipseやNetBeansなどのIDEはRailsではデメリットのほうが多い。
  • 実行環境: cygwin上にRails環境を構築。ターミナルソフトはPoderosa
  • 起動の遅さ: なんとしてもテスト時の時間は短くしたいのでSpecServerを立てる。gemでsporkというものに変わってしまっている。
これで何とか、それなりに開発出来てます。
ただ、それでも、eTextEditorはRSpecバンドルでのファイルナビゲーションが正常に機能しなかったり、spork立てても ./script/generate など、rspec以外のRails起動は相変わらず遅いなど、不都合はあります。
 
あと、実際にやってたのですが、エディタはWindowsでeTextEditorを使うのは同じですが、実際のRails環境はLinux上に構築して、FTPもしくはSambaでファイルにアクセスしてソース編集、みたいなこともやってました。ただ、それだと、エディタのファイルナビゲーションが全く機能しない(FTP)、異様に時間がかかる(Samba)で、完全に解決には至りませんでした。
エディタはVIでいい、という人ならいいんでしょうけど、やっぱりTextmateで作りたいですから、、。 IDEはねぇ、Railsでは必要性が分からない。