• ベストアンサー

RubyとPython覚えるならどっち?

PHPを覚えてきたので、次にRubyかPythonのどちらかを勉強しようと思っています。本当は両方勉強した方がいいんでしょうけど、一気に勉強するのは大変なので、どちらか片方をやりたいと思っています。いろんなサイトで比較をされていますが、RubyはPythonに比べて実行速度が遅いとか、世界的なシェアではPythonの方が上、しかしRubyは国産でマニュアルも沢山ある。うーん、どっちを選択したらいいか迷います。たぶん、どちらもやれることは余りかわらないような気がします。ただ実行速度は少し気になります。 使う目的は今は特に決まっていません。もう一つくらい言語を取得したいというくらいの気持ちです。よろしくお願いします!

質問者が選んだベストアンサー

  • ベストアンサー
  • dekopa-
  • ベストアンサー率42% (161/378)
回答No.6

Pythonを知らないRubyistとして、Rubyを推します。 1.シェアを気にするならPerlを選択すべきでしょう。ですがPerlは省略表記のルールが嫌いなので、勧めません。やっているときは「Perl最強!」って気になれますが、Perlからちょっと離れるととたんに揮発しました。 2.Webなら、Ruby on Railsがあります。実際仕事で使いましたが、かなり楽です。ただし、Webで要求されるニーズを遍く満たしたいなら、Railsで提供する機能の大半を覚える必要があり、Rails本一冊を精読しないと駄目だ、と付け加えておきます。 3.単純に、楽しいです。特にオブジェクト指向部分が。ブロックを記述するのも楽しいですね。文字列処理も楽しいです。 構文が私好みです。無駄な;や()が全部省略できます。 興味が出てきたら、「るびま」でも読んでみてください。

参考URL:
http://jp.rubyist.net/magazine/
mellow91
質問者

お礼

Rubyのプログラミングは楽しいとよくききます。Perlは昔CGIを学校で作らされましたが、他人のコードがわからずに苦労しました。自分のコードですら1週間くらいたつと意味不明に見えてきたりしたものです・・・ ルビーに興味がでてきました。今回はRubyから勉強することにします。ありがとうございます!

その他の回答 (5)

回答No.5

あえてどちらでもなくてサーバサイドのWebシステムとしてJava クライアントサイドでAjax(JavaScript+XML) Webシステムから離れてC++/VB.net PHPと同じような言語を覚えるのは置いといて ちょっと違うものを覚えてそれでまだというなら RubyかPythonを覚えれば良いかな。 その場合自分としてはまずはPerl(ユーザー/資料/参考文献の点から) がいいと思いますね。 理由は言語としてある程度、得意/不得意はあるけど 似たような言語だとどれでも同じことができるから それ以外の言語に目を留めるのもできることの幅が広がるから

  • yukimican
  • ベストアンサー率70% (112/159)
回答No.4

この辺は好みの問題でしょうね。 どちらもオブジェクト指向言語なので、考え方さえ理解できれば 他方へのスイッチも容易に出来ると思います。 実行速度については、スクリプト言語(動的実行)である以上、どちらも大差はありません。 今はRubyの方が遅くても、今後のアップデートで変わってくるかもしれません。 高速化させたいなら、どちらの言語でもいろいろ手段はありますし、他言語のモジュールとの連携もできます。 No.3の方が言っていように、 Webアプリケーションをやるなら Rubyだと Ruby on Rails で簡単に作れるので、かなりオススメなのですが。

mellow91
質問者

補足

スクリプトなので余り大差ないのですか。スピード欲しかったらハードウェア追加とかして対処するという方法もありますし、Perlもスクリプトだけどそこら中で使われているということで、Rubyを考えてみます。ありがとうございます

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.3

目的があるとか判断の基準が明確になっているのならまだアドバイスのしようも あるのですが、現状ではなんとも。 それこそさいころでも振って決めればいいのではないかと。 PHPをやってきたということなので、webプログラミング → Ruby on Rails → Ruby という線もなくはありませんが。 あと#1の方の > Pythonなら、いざとなればC, C++で機能追加してしまう奥の手があります。 ですが、その書き方ではまるでRubyじゃその手が使えないみたいじゃないですか。

mellow91
質問者

お礼

Ruby on Railsには興味がありました。ウェブ関係を今後もやっていく予定なので、Rubyも考えてみます。ありがとうございます!

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.2

どっちでもいいですけど、特にこだわりがないなら、私もpythonのほうをすすめます。 pythonは、jython、IronPythonなど、実行環境が豊富なのも魅力です。

mellow91
質問者

補足

開発環境はパイソンの方があるなーとは思っていました。微妙にパイソンに興味がでてきました!ありがとうございます!

  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.1

>実行速度は少し気になります。 Pythonなら、いざとなればC, C++で機能追加してしまう奥の手があります。 速度の問題が気になるなら、この特長は、かなり魅力じゃないかと思います。 とりあえずは、全部Pythonでかき、ボトルネックを生じたら、その部分をC, C++に書き換えて組み込んでしまう芸当が出来ます。

mellow91
質問者

補足

微妙にパイソンに興味がでてきました!ありがとうございます!

関連するQ&A