• ベストアンサー

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

  • PythonとRubyどちらを選ぶべきでしょう?

    こんにちは。 今、PythonとRubyどちらをメインで学ぶべきかを考えており良かったら皆様の意見を参考にしたく思います。 現状 Ruby 7ヶ月 Python 1ヶ月 ほどの経験があります。(プログラミングはまだ初心者です。) Rubyの方が慣れているのですが、以下のような考えからPythonをメインで使った方がいいのか考えています。 以下、僕の考え 今後、Ruby on Railsがどんどん使われだして、現在のPHPのような形でRubyが使われるんじゃないか。 とすると、Rubyを使っても他の人と全く差別化出来ない取り替えの効いてしまうプログラマにしかなれないのでは。 Pythonの場合は、まだ日本でのユーザー数が少ないこともあり、Ruby,PHPに比べれば自分を差別化することにつなげられるのではないか。 とすれば、Pythonを使った方がいいか? ちなみにコレ以外に今思っていることとして、 Pythonはモジュールをインポートすることが前提とされているため、モジュールを効率的に利用する方法が学びやすい。そのため、プログラミングの学習には向いている。 PythonにもturbogearsやDjangoがあるので、Railsが無くてもいいのでは? Google app engineの登場で、Python学習に都合の良い場所が出来た。 といったことです。 これらの考え方について皆様はどのように思われますか?逆にPythonやRubyよりもCやPerlをやった方がいいんじゃないかといった意見もありましたら頂けると嬉しいです。よろしくお願いします。 (追記)ちなみに僕は今学生で、就職先ではきっとPHPを使うことになります。(ホントはあまり使いたくないのですが)

  • pythonでコーディングされてる有名なサイトって

    pythonでコーディングされている有名なサイトってありますか? 来週からエンジニアとして働く者です。未経験ですが、会社でpythonをすすめられ、現在勉強しております。Rubyでありましたらcookpadなどがぱっと浮かぶのですが、pythonといったら何か有名サイトがあるのかぱっと浮かびません。 あまりマイナーな言語でありましたら、今後pythonを勉強していく意欲がでず、Rubyをやっていきたいと伝えようか悩んでます。(pythonよりRubyの方がベンチャー企業で使用しているイメージがあります) 未経験のため、わがままを言える立場ではありませんが、 需要の低い言語を勉強していくのもどうかと思います。 会社からはJAVAやPHPではなく、今後需要のあるRUBYもしくはPythonのエンジニアになってほしいと言われてます。 但し、RUBYはすぐに席がないため、Pythonでお願いしたいという経緯が御座います。 ご意見頂けますと幸いです。 よろしくお願いします。

  • Perl・Python・Rubyのどれがおすすめ?

    小さいプログラムであればコンパイラ言語より簡単に作成できると聞いたので、インタプリタ言語を一つ習得しようと思っているのですが、Perl・Python・Rubyのうちどれを選ぼうか悩んでいます。 私は現在、情報系学科の大学生で、今までにPascal、CASLII、C、Perl、Javaを習いました。どれも課題をこなすために使った程度で、どれも1年以上継続して利用していません。 以下が、それぞれの言語に対する認識です。初心者の意見なので間違っていることが多いかもしれません。 [Perl] -長所 ・一度勉強しているため、勉強し始めやすい。 ・習い始めるにあたり、一番初めに読もうと考えている「初めてのPerl 第5版」の評価が高い。 ・参考となるものが多い。 -短所 ・ソースが見にくいと聞いたことがある。 [Python] -長所 ・Perlより後にできた言語なので、Perlより洗練されてて高機能? ・Perlとは違い、同じことをするプログラムのソースは似ると聞いたことがあり、こっちの方が使い易い? -短所 ・Perl同様、Pythonを始めるなら一番最初に読もうと思う「初めてのPython 第3版」の訳が悪いという噂がある。また、「初めてのPerl」に比べると、ページ数が異常に多い。 Rubyについては聞いたことがある程度でほとんど知りません。 また、コンパイラ言語としてはC#を習得しようかと考えています。 以上から、Perl・Python・Rubyのうちどの言語を習得するのがいいと思いますか?個人的な意見でも構いません。理由を詳しく書いていただけると、選択の参考になるのでありがたいです。 できるだけたくさんの意見が聞きたいので、様々な回答をお願いします。

  • PythonかRubyにするか悩んでいます.

    このようなやりとりは調べている中でたくさんありましたが, 未だに自分の中で決着がつかずにいます. みなさんの力を借りれればと思います. 現在のPC環境は Windows7 64bit に仮想でUbuntu12.04 を導入しています. Ubuntu上でEmacsを利用し,言語処理と画像出力を考えています. 今まではC言語を勉強してきました. 後はJava,Basic,Lispをかじった程度です. (自分自身ではプログラムに未だ苦手意識があります) 音声認識等も専門なので,のちにここで学んだ知識を生かせれば・・と横着なことを考えています. PythonまたはRuby,どちらの言語の方が良いでしょうか. もしこの二つに限らずおすすめの方法がありましたら教えてください. よろしくお願いします.

  • プログラミング言語、Pythonなどについて

    プログラミングスクールに通いプログラミングを習いたいです。言語を決めているとこですが、単に需要があったり稼げるというのを目にして安易な理由ですがPythonに興味があります。しかし、Pythonが主とするAIの世界は難しく地頭も相当よくないとききました、PythonやAIに特化したスクールもありましたが、転職保証するサービスはないようですが就職はできるでしょうか。これまた安易な考えですがいずれ独立したいですが、調べたイメージではAIの仕事はチームプレイなイメージがありますが、仕事は簡単には舞いこんでこないでしょうか。もちろんどの言語も甘くないでしょうが、まずは就職するにしても独立するにしても、 PythonやらAIが特に難しいならまだ比較的案件が多そうな他の言語(Ruby、PHPなど)にしようかとも考えてますがどうでしょうか。また、PHPやRubyならまだ可能性や案件は多いでしょうか?体験談や知識、意見を聴きたいです宜しくお願い致します。

  • スクリプト言語としてのPHPについて

    PHPについてほとんど知らない者です(他の言語もほとんど知りませんが・・・)。 Webで検索していると、Webアプリを開発するLL言語としてPHP, Ruby, Python, Perlを使っているというケースをよく目にします。一方、タスクを自動化するためのスクリプトを記述する言語としては、Ruby, Python, Perl, シェルスクリプトで記述しているケースをよく目にします(Linux/UNIX系)。 そして、PHPはWebアプリ開発言語としてかなりのシェアを占めていそうだが、スクリプト言語としてはそんなにシェアを占めていないのかな? という印象を持ちました。 そこでお聞きしたいのですが、スクリプト言語としてのPHPは他の言語と比較してどのような感じなのでしょうか? PHPはWebアプリ開発言語としてだけではなく、スクリプト言語しても開発現場でRuby, Perl同様に使われているといった感じなのでしょうか? あるいは、WebアプリはPHPで書いてるけど、スクリプトはPHP以外(Ruby, Pythonなど)で書いているという方は結構いるのでしょうか?その場合、何故PHPを使わずに別の言語を使っているのでしょうか? ご意見をお聞かせください。

    • ベストアンサー
    • PHP
  • python を使って SNS 作成

    現在、pythonを学習中のプログラミング初心者高校生です。初級者にわかりやすいとのことでpython勉強し始めました。しかし、スクリプト言語にはphp perl rubyなどがあるので僕の選択肢が正しかったのか不安になってきてしまいました。 とりあえず今のところpythonとhtml,cssの勉強をしています。その後javascriptなどを学ぶつもりです。 そこで質問があります (1)Pythonを使った場合sns作成の、最善な方法(直線的に、どの言語を学び具体的にどのように作っていくべきか) (2)そもそもpythonではなくそれ以外のスクリプト言語の方がSNSを作るのに向いているのか  またその場合どのような手順で進めるべきか *僕が作りたいのはアメーバピグのようなゲーム要素は取り入れないつもりです どうかご教授宜しくお願いします!

  • 日曜プログラマならRubyとPythonどちらを?

    本職ではない日曜プログラマならばRubyとPythonのどちらを学ぶべきでしょうか? 前提として、英語はできるのでそちらの情報も読み解けますが、やはり日本語の方が楽です。 また、何か(Webアプリとテキスト・ファイル処理)を作るにしても基本一人です。 コードを書くのが楽しいと聞くので、チームではないことからもRubyを選びたいのですが、 GoogleとAmazonはクラウドベースでPythonを使うと聞きます。実際にどのように利用してよいのか未勉強ですが、この点は見逃せないように思います。 現在のスキルはVBAとSQL程度です。RubyとPython両方学べばよいのでしょうが、日曜プログラマですのでそこまでの時間がありません。また、これで食べていこうとかいうのではありません。 アドバイスよろしくお願いいたします。

    • ベストアンサー
    • Ruby
  • Pythonとは?

    最近Pythonの創設者がGoogleに入社したこともあり、有名になりつつあるPythonですが、具体的にどのようなことができるのでしょうか? Wikipediaを参照してみたのですが、強力なオブジェクト指向だということはわかりました。また、CGIとしてWebアプリケーションなども作成できるようですが、パイソンを使ってWindowsやLinuxで動くようなデスクトップアプリケーションも作成できるのでしょうか? それともPHPのようにWebアプリのみに特化した言語なのでしょうか? また、これから学ぶのであればRubyまたはPythonどちらを選択しますか?

  • pythonとBasic

    python の勉強を始めました。 と言っても本格的なプログラミングはしたことがなく、入門書を読んでもつまらない、というのが先ですが、そういえば小中学生くらいのころPC8801で、Basicをしていました。 runで実行したら一つの画面で実行されていたのですが、python は、エディタで書いて保存して・・・と何でこんなことするのか分かりません。 今のプログラム言語って昔とちがうものなのでしょうか?