【現在の環境】
ローカルWinPC:エディタを立ち上げるのはこのマシン。テスト用サーバとしても稼働。
ローカルLinuxサーバ:実運用サーバと同じ環境を構築。WinPCで作成したファイルをUPしてさらに動作確認。
この二台に加えて実運用サーバがあります。
ローカルWinPCで動作を確認してもローカルLinuxサーバとは挙動が違うし二重の動作確認が面倒で、
さらにPerlの場合は一行目の書き換えも面倒であるため、
この頃はsambaで直接ローカルLinuxのファイルを編集しています。
すると、ローカルWinPCとローカルLinuxサーバの双方で異なる開発途中のファイルができてしまったりするため、
手間が省けたかわりに混乱する事も多くなりました。
開発者や開発に携わる企業の多くがWinPCでプログラムを書き、ローカルで動作確認すると思いますが、
どのような開発環境を構築し、どのような開発手順を用いているのか教えて頂けないでしょうか?
また、参考サイトやアドバイスなど、多くの意見を伺えれば幸いです。
うちではWin機で作業しますが、ファイルはすべてテストLinux機上(Sambaで共有し)に置いています。
リモートドライブとしてXドライブとかを割当てているので、時々Saveに時間がかかる事がありますけど、ローカル感覚で使っています。(Xドライブはテストlinux機の/home/hoge って感じで)
なので、Win機上ではテストはしません。
確認はWin機上で普通にブラウザを立ち上げて...です。(当然テストLinux機にApacheを入れています)
****.conf や、ログなどを見なきゃならない事や、パーミッションの変更などはLinuxからやった方がわかりやすいので、ターミナルソフト経由でやっています。(Poderosa を使っています)
(何となくですが)エディタもWin用の方がいろいろあって使いやすい気がしています。気に入っているのは、スタンドアローン版のPHPEditorです。
で、結局ほとんどリモートの作業ばかりなので、(うちの)Linux機は3台で1つのモニタとキーボードを共有しています。
>さらにPerlの場合は一行目の書き換えも面倒であるため、
書きかえる必要がないように、ローカル環境を作るのでは?
ソースは、SVN等で1元管理
なるほど、手間を省くためのローカルlinux環境ではあるのですが、
大量に存在するディレクトリやその中に格納されたデータの動作テストがあり、
ディレクトリの作成や削除のたびに所有者を変更したりという作業が面倒で
所有者やパーミッションを気にしなくても良いWinPCでの動作テストに落ち着いていました。
面倒でもローカルlinuxで一元化してみようかな…
個人でやっているので、あんまり参考にはならないと思いコメント欄に記入しようかと思いましたが、コメント欄が閉じていたので回答で。(ポイント無しでも構いません)
>さらにPerlの場合は一行目の書き換えも面倒であるため、
例えば、Linux上で #!/usr/local/bin/perl であるなら
Windows C:\に、usr\local\を作成して、その中にActivePerlをインストールしれば、一行目の書き換えは不要です。
>ディレクトリの作成や削除のたびに所有者を変更したりという作業が面倒で…
一気にやってくれるシェルスクリプトを作っておけばよいのでは?
環境は質問主とほぼ同じですが、sambaは使っていません。
ローカルWin:統合開発環境Eclipse+Epic/PHPEclipse をメインで使ってます
統合開発環境はパスなどをしっかり通したり、Cygwin環境を使うように設定すれば、Linux環境と有る程度距離を縮めることは可能です。
Win統合開発環境は入力補完・文法エラーやwarnning確認、単体テスト用に近く、実際の動作テストは殆どLinux環境で行っております。
バージョン管理はSubversionを使っています。
perlの場合、一行目を書き換えなくてもすむような環境を一度は作っていたのですが、
ローカルWinPC上のファイルとLinux上のファイルがごちゃ混ぜになった時に簡単に識別できると言う事から止めてしまっていました。
また、補足をさせてください。
携帯系の開発がメインであるため、動作確認が携帯でしかできない場合があります。
ローカルLinux機を実際にサーバとして公開することで携帯での動作確認を可能にしています。
ローカルWinPC:ターミナルソフトputtyなどを立ち上げるだけ
ローカルLinuxサーバ:GNU Emacs,GNU screenをインストールしておく(私は実機ではなくcolinuxを使っています)
こんな感じで開発をしています。
一言で申し上げますと
ローカルLinuxサーバで GNU screenとGNU Emacs を使おう!
です。
参考になるページがあります。
http://bb.watch.impress.co.jp/cda/desktop/17468.html
http://www.itmedia.co.jp/enterprise/articles/0703/07/news017.htm...
などです
両方ともはてなのnaoyaさんの記事ですが、
すごく効率的に開発できるヒントをたくさん与えてくれています
絶対にお勧めです!
記事を読んでいますと職場以外でもノートPC一台で開発を完結できそうですね。
私は職場以外ではノートPCとインストールしたapache上での動作確認となっていたため混乱が生じていました…
参考になりました。