現在、社内のWeb担当をしながら、独学でCSSやWeb標準を学んできたものです。


前々からRuby on Railsの話をよく聞きます。何でも、PHPよりも、使い勝手がよく、早く開発できるとか何とか。

僕自身は、どちらかというと、オープンソース系のソフトをいじるほうが多いので、PHP+MySQLのほうがまだマシな感じがします。

ただ、現状PHPを満足に読めるレベルでもありません。

そこで、これから本格的に何かのスクリプト言語を学ぶときは、PHPとRubyのどちらがいいのでしょうか?もちろん、メリット、デメリットあるのでしょうけど、いろんな観点から教えていただきたいと思います。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/08/31 18:15:20
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:Kumappus No.4

回答回数3784ベストアンサー獲得回数185

ポイント20pt

http://0xcc.net/blog/archives/000043.html

これはRuby, Python, JavaScript, Perl, C++(のSTL)で配列操作をする場合の比較。

端的に言ってしまうと少なくともここに書かれているような範囲ではどの言語を使おうとそれほど差は出ません。

言い替えるとこれから「Hello, World」から始めるならPHPもRubyも同じようなものです。

#個人的にはRubyの「ちょっと関数プログラミングっぽい」ところが非常に気に入ってはいるのですが、最初っからそのへんを理解するのは大変だと思うので…

ただ、わたしはプログラミングは何か実際に役に立つ〜それがたとえゲームであっても人工無脳であっても〜ものを書いてみないと身につかないと思っています。それから、なるべく早い段階で「先人の苦労の成果をどんどん使うやりかたを覚える」のも重要だと考えています。というのもひとりでスクラッチからこりこり何か書くのは今となっては労力のわりに結果が出ないのでたぶん途中で嫌になってしまうことが多いので。PHPの場合はPEARという標準ライブラリやSmartyなどのテンプレートエンジンがあり、同じような位置づけでRubyには(もちろん)標準のライブラリがあって話題のRoRがあったりします。

どちらもさまざまなリッチな機能をそれぞれの言語仕様や考え方に基づいて実現しています。

したがって、ひとつの答えとしては「あなたがいじりやすい環境およびそれを使って何をやってみたいかはRuby向けかPHP向けか」でどっちからスタートするか決めてよいと思います。

ですから、

できて、WebサービスやAPIをhackして、自社ホームページに活用するくらいでしょうか。

であれば今、自社サーバで動いている環境で使えるほうから始める、と割り切ってしまっていいのでは。

id:aratako0

先人の苦労の成果を使うやり方を覚えるっていうのは非常に共感できます。CSS Hackの時にいろんなサイトで勉強させていただきましたので。


>今、自社サーバで動いている環境で使えるほうから始める、


確かにそうですね。じゃあ、PHPかなーと思います。

2006/08/31 18:10:41

その他の回答4件)

id:furutanian No.1

回答回数112ベストアンサー獲得回数14

ポイント20pt

以前プログラマをしてました。

現状、仕事に就く際には、PHPを使える方がアピールポイントになるでしょう。

まだ、エンタープライズ用途でRuby(含Rails)が使われるケースは少ないと思いますので。

ただし、楽しさでは圧倒的にRubyでしょう。なにしろ、組んでて楽しいです。

http://www.ruby-lang.org/ja/

id:aratako0

仕事は今やっているんで、アピールポイントとかどうというのはいいんですが。


エンタープライズ用途ですか。。。難しいところですね。できれば、自分でアプリとか組んでみたいんですけれど、そんな時間使うのは、たぶん社内からの圧力でできないですね。


できて、WebサービスやAPIをhackして、自社ホームページに活用するくらいでしょうか。

2006/08/31 09:45:51
id:TomCat No.2

回答回数5402ベストアンサー獲得回数215

ポイント20pt

http://f14.aaa.livedoor.jp/~teriyaki/wiki/index.php?%5B%5B%B...

平行しておぼえてしまう。私は、それをお勧めします。

 

基本的に、rubyもPHPも、言語仕様はそんなに変わるものではないんです。ただ、それぞれに得手不得手があるから、適材適所で使っていくということ。

 

もちろんそれぞれの言語ことに指向している思想というものがありますから、それぞれに特徴的な作法はあります。でも、言語仕様としては、どれもそんなに変わる物ではありませんから、両方いっぺんにおぼえることに、何の困難もありません。

 

ついでに、最近は何となく古めかしいイメージで人気のないperlなんかも、実は文字列操作などには大変使いやすい言語ですから、一緒におぼえちゃうといいですね。

 

というか、たいていのプログラミング言語というものは、何かがひとつ分かっていれば、あとはほんの簡単な言語仕様の概要やライブラリの使い方さえ分かれば、もうそれで十分使いこなせるものなんです。どれかひとつとこだわらず、似たようなものはみんなまとめておぼえてしまう。それが最も得だし、また現実的だということです。

 

これから取り組むなら、両方一緒におぼえてしまいましょう!!

id:aratako0

両方ですか。。。まさか、そういうこともできるとは思ってもみず。でも、確かに、CSSとHTMLを分離して覚えるのって、大変ですもんね。一気に覚えたほうが手っ取り早いといえば、手っ取り早い。その上で、XMLも覚えてしまう、のような?

ありがとうございます。

2006/08/31 10:02:29
id:technolize No.3

回答回数21ベストアンサー獲得回数3

ポイント20pt

出遅れましたが、とりあえず PHP をお勧めします。理由としては、

  1. マニュアルが整備されている。
  2. 構文が複雑ではない。
  3. PHP にも Rails と同様の仕組みがある。

等々。。

1は他の言語を使っている方も認めてくれるんじゃないでしょうか?

2は主観ですが、トリッキーな記述はほぼ無いので読みやすいかと。

3はフレームワークというものですが、Symfony や CakePHP などは Rails の機能を取り込んで作られています。

なにかと馬鹿にされがち(?)な PHP ですが、「仕事」で使う言語としては一番便利だと思います。

また TomCat さんのおっしゃる通り、両方覚えてしまうのが一番ですね。

http://www.php.net/

id:aratako0

フレームワークという言葉自体はなんとなく聞いたことはあるのですが、PHPにもRuby的なものがあるんですね。知りませんでした。


確かに現在の仕事は使っても、オープンソース系のシステムのコードを触るくらいで、その上よく使うソフトがPHPをメインに書かれているので、仕事上は便利なんですよね。


ただ、頭のどこかで引っかかっているRubyの存在。。。かといって、元がCSSをメインにしているため、CSSも追っかけないといけないし。。。と、このへんで悩んでいるみたいです。

2006/08/31 10:05:04
id:Kumappus No.4

回答回数3784ベストアンサー獲得回数185ここでベストアンサー

ポイント20pt

http://0xcc.net/blog/archives/000043.html

これはRuby, Python, JavaScript, Perl, C++(のSTL)で配列操作をする場合の比較。

端的に言ってしまうと少なくともここに書かれているような範囲ではどの言語を使おうとそれほど差は出ません。

言い替えるとこれから「Hello, World」から始めるならPHPもRubyも同じようなものです。

#個人的にはRubyの「ちょっと関数プログラミングっぽい」ところが非常に気に入ってはいるのですが、最初っからそのへんを理解するのは大変だと思うので…

ただ、わたしはプログラミングは何か実際に役に立つ〜それがたとえゲームであっても人工無脳であっても〜ものを書いてみないと身につかないと思っています。それから、なるべく早い段階で「先人の苦労の成果をどんどん使うやりかたを覚える」のも重要だと考えています。というのもひとりでスクラッチからこりこり何か書くのは今となっては労力のわりに結果が出ないのでたぶん途中で嫌になってしまうことが多いので。PHPの場合はPEARという標準ライブラリやSmartyなどのテンプレートエンジンがあり、同じような位置づけでRubyには(もちろん)標準のライブラリがあって話題のRoRがあったりします。

どちらもさまざまなリッチな機能をそれぞれの言語仕様や考え方に基づいて実現しています。

したがって、ひとつの答えとしては「あなたがいじりやすい環境およびそれを使って何をやってみたいかはRuby向けかPHP向けか」でどっちからスタートするか決めてよいと思います。

ですから、

できて、WebサービスやAPIをhackして、自社ホームページに活用するくらいでしょうか。

であれば今、自社サーバで動いている環境で使えるほうから始める、と割り切ってしまっていいのでは。

id:aratako0

先人の苦労の成果を使うやり方を覚えるっていうのは非常に共感できます。CSS Hackの時にいろんなサイトで勉強させていただきましたので。


>今、自社サーバで動いている環境で使えるほうから始める、


確かにそうですね。じゃあ、PHPかなーと思います。

2006/08/31 18:10:41
id:kn1967 No.5

回答回数2915ベストアンサー獲得回数301

ポイント20pt

Perlは正規表現を使ったテキスト処理を短時間で製作でき、高速で実行してくれるということでCGIで多様されました。

PHPはWEB及びデータベースに関連した豊富な組み込み関数でPerlをほぼ駆逐しつつあり、いずれも豊富な実績に裏づけされ解説サイトや情報サイトも充実してますよね。

Rubyは、Railsというフレームワークが提供されたことで一気にブレイクしたように見えますが、生まれてから時間が経っているにもかかわらずWWW上の情報量はまだまだPerlやPHPの足元にも及びません。

Ruby Programming Language

”人気の出てきているスクリプトや言語”を学ばれる事はお勧めしますが、ある程度熟成するまでは常に手探り状態になり、下手をすれば本業に支障をきたすことになるかもしれないことを覚悟しておいたほうがよいでしょうね。

現在の忙しさは存じませんが、企業サイトを維持運営なさっておられるならば、現在使っているPHPのスキルをより充実させる事をまずはお勧めしたいと思います。その上で余裕があればRubyを齧っていかれればよろしいかと・・・

id:aratako0

>ある程度熟成するまでは常に手探り状態になり、下手をすれば本業に支障をきたすことになるかもしれないことを覚悟しておいたほうがよいでしょうね。


確かにそうですね。流行に流されすぎて、結局目的を達成できなかったら意味ないですもんね。


皆さん、ありがとうございます。

2006/08/31 18:11:55
  • id:TomCat
    あれ?質問継続中なのにコメントが書ける!!

    そうそう。PHPにはトリッキーな部分が少ないですから、素直に書けますよね。一方、rubyは「誤解のない書き方」を徹底追求して作られたものですから、これもまた別の面で素直に書ける言語と言うことが出来ると思います。

    その違いが体感できると、PHPで書くにしてもrubyで書くにしても、ぐっと実力が付いてくるでしょうね。その点でも、私は両方一緒に憶えてしまうのがお勧めかなあと思います。
  • id:aratako0
    両方学ぶというのも捨てがたいのですが、いかんせん時間と労力を考えると、まだそこまで確保できない感じもします(それなら、もっと今本分であるCSSを徹底的にやれとも思いますし)


    ただ、TomCatさんがおっしゃるように、PHPとRubyの言語仕様が似ているのなら、PHPをある程度分かってから、それを比較しつつ、Rubyっていう手もありかなとは思います。

この質問への反応(ブックマークコメント)

トラックバック

  • [はてな]PHPかRubyか。 TRANS 2006-08-31 18:38:16
    こんな質問をはてなの人力でしてみた。 http://q.hatena.ne.jp/1156984086 現在、社内のWeb担当をしながら、独学でCSSやWeb標準を学んできたものです。 前々からRuby on Railsの話をよく聞きます。何で
  • TRANS 2006-08-31 18:38:17
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません