Ruby VS PHP 仁義なき戦い
■ このスレッドは過去ログ倉庫に格納されています
まずはこれをお読みください。
ttp://www.rubyist.net/~matz/20080126.html
Webアプリケーションを作るには、結局どっちがいいんでしょうか。
初心者はどっちを選べばよいのでしょうか。 PHP5はなんか肥大化しちゃってるイメージあるね。主観だけど。
PHP3->4になったときほどのインパクトはない。
それからベンチで間違いのご報告。rubyは、1.8.6でした。ごめんなさい。
1.9.0だともっと速くなってることを期待。
DB接続のテストもしてみました。
WWWと同じサーバ上のPostgreSQLに接続・切断してるだけです。
php 650#/sec
fpc 270#/sec
c 275#/sec
lua+luasql 206#/sec
perl+Pg 95#/sec
ruby+postgres 174#/sec
python+pgdb 52#/sec
php(cgi) 85#/sec
今日はなんかサーバの調子がいい。
luaが健闘。ガンバレって言いたくなるのは判官びいきかw >>66
Ruby使いですが、phpメッチャ早いですね
プリミティブ型としてもってるからですかね。 ああ、あと関係ないけど、Rubyだとforつかわないから、もうちょっと意味のあるもので頼む >>66
んてかこれおかしくねえ?ネイティブコンパイラのcにまけるはずないと思うんだが
JITしててもありあえねえ
fpcがcに勝つのもありえねえ(fpcは最適化がクソなので有名)
環境、コンパイラ、スクリプトのバージョン、ソースを晒してもらおうか。 上よんでなかた
CGIとして動かしてなかった時の話か 確かにあんまり意味はないだろうな。
これまでの比較は、どの言語でも似たり寄ったりのコードでかけるし。
かといって、ちょっとしたアルゴリズム(ソートとか暗号化など)は、
言語によっては関数として実装済みで、現場で組むことはなかったり…。
今回fpcがCよりも早かったこともあったが、最適化に差が出るほどの
コードでもなかったんだろう。
まぁ、言語の比較ってのは開発効率など多角的に検討して、
適材適所に用いられるものだと考えている。だからといって、
あちこちにいろんな言語が混ざってちゃやりにくくてしょうがない。
結局、言語の選択なんて「嗜好」と「惰性」がでかかったりしてw
単純な数値計算のループで最適化をゴリゴリやられた結果、最終値の代入文に
置き換えられてたこともあったしなぁ。
こういうのやられたら、どれだけループさせようと比較の意味が殆ど無くなる(w
プログラムの規模が大きくなるほど、ループ内の処理をいかに簡潔に書くかで速度が変わってくるから、
本当に速さにこだわるなら、単純なfor文の比較よりも腕のいいプログラマを雇った方がよっぽどあてになる。 じゃあ、腕利きを雇いにくい昨今は
できるだけ無駄に遅い言語は避けないとな どんなに良い言語を使っても、作るやつがクソなら出来るプログラムもクソだぜ。 それで糞に制約を与えやすい言語が企業に好まれる訳だな
問題なのはプロマネが糞だった場合だが Perl VS PHPなら分かるけどRudyって
格闘場でうごくせきぞうに囲まれてるスライムだな そんなに強いんなら早くPHP淘汰してくれよ
誰も好きでPHP使ってる訳じゃねえんだ 俺は島根出身だからrubyに一票
rubyはphpのように関数の中に関数が入れ子になりにくく
ワンライナーで関数が複数定義されてても
何の処理をしてるのか一目でわかる なんだかんだいっても
PHP使いはrailsの影響を受けまくりで
railsに似たフレームワークが乱立してるけど
railsを超える、または同等のフレームワークがPHPでは作れない
その辺りで言語レベルで優秀かどうかの証明がされていると思う 言語選択する一番の理由は食えるか食えないかで
いくら優秀な言語でも食えなければ
使いたくても、使えない ここでいう食えるか食えないかというのは
その言語でのWEB制作の案件が多いかどうかってことだからね rubyがphpと同じほどWEB制作案件があって
レンサバ環境も整備されてるなら
それは間違いなくrubyを使うよ 逆に言えばRuby on RailsがなかったらWEBサイト制作であえてRubyを選ばなければならない理由がないということ。
Ruby on Railsは、ここ最近評判を下げた。
http://arton.no-ip.info/diary/20080104.html#p01
>でも、それがRailsが吹き溜まってる原因のひとつだぜ。日本人の開発者どもが、こういった重要なパッチ全般を無視するってことだ。やつらはすげぇいいやつらなんだが、しろーとくせぇんだよな。
Ruby界隈の明るいニュースとしては、Ruby1.9でRoRが高速になるか期待というところか? PerlはCPANという資産価値も考慮すべき?
はてなやLivedoor、mixiはPerlを使っている。
枯れた技術の水平思考として、Perlはこれからも続くだろう。
http://d.hatena.ne.jp/keyword/%B8%CF%A4%EC%A4%BF%B5%BB%BD%D1%A4%CE%BF%E5%CA%BF%BB%D7%B9%CD
新たにやるならPython>>>Perlがオススメか?
Python→Google、Microsoft(IronPython)で採用されてる。 CPANで使うのは10個ぐらい。
それくらいなら他の言語でも代替方法がある。
いくら多くてもなぁ。 高卒年収300万弱レベルがダンピングしてる現状じゃPHPは厳しいと思う。
とはいえPerl、Python、Rubyは少なくとも日本じゃ蚊帳の外だしね。
やはりWeb系でまともなに稼げるのはJavaぐらいか。 javaで稼げるってよくきくけどみんなapache+tomcat+jdk+linuxのなんかで
開発してるの?結構敷居たかいべ 逆の立場でいえば、Javaで開発させると
高くつくんだよね。 敷居が高いからこそだね。企業は安心のためなら金払いもいいし。
PHP使える優秀な技術者もたくさんいるけどやはり地雷率が圧倒的に高い。
これも敷居が低いからこそなんだろうけど。 Javaの敷居の高さって、
言語自体の難しさとかではなく、
客が運用環境を用意できるかどうかの敷居だろうね。
PHPでフレームワークを使って開発しているのなら、
Javaでも同じように開発できるし。 tomcatが難しいというより、
tomcatを含めたシステム全体を
保守するのが難しい。 いや、いいんじゃね
2chで言われてるほど悪くはない
.net使うと開発超楽だし Javaはチンポーネント多すぎて組み合わせあーだこーだするのがめんどい Ruby1.9 や Rubinius は MRI と比べて本当に速いのか
http://d.hatena.ne.jp/kwatch/20080304/1204646782
絶望した! Rubinius のあまりの遅さに絶望した!
また Ruby1.9 も、Ruby1.8 より遅くなっている。
eRuby ではどうしても eval() が絡むからしかたないんだけど、
とにかく Ruby1.9 になればなんでもかんでも速くなるというのは間違いであると断言できる。
絶望した! eval ないのにひとケタ遅い Rubinius に絶望した!
また eval がなくても、Ruby1.9 は Ruby1.8 と大して変わらないことがわかる。
結局、Ruby1.9 や Rubinius で速くなるのはバイトコードの実行部分だけであり、
String#<< のような built-in method の実行が速くなるわけではない。
fibonacchi sequence のベンチマークが速いのは built-in method の呼び出しがない、
純粋にバイトコードの実行だけで済むベンチマークだからである。 PHPも単純にループするだけのプログラムなら、PHP5が早いんだけど、mod_phpを通してabでベンチマーク取ると、PHP5はフットプリントが大きい分、PHP4の方がさばけるリクエストは多いんだよね。 俺に金をもたらしてくれれば、RubyでもPHPでも何でもいい
まずは金だ、金持って来い!!! Rubyは書籍や情報が少ないという面でPHPのほうが良い。
またRubyは仕様がころころ変わる。
Rubyみたいに使われていないのはざっくり切って前に進んでいる、
古い言語はレガシー引きずっているという批判もあるが
それだけプログラマーの数も多く、いろいろ使われてきた歴史があるからさ。
使っていたコマンドなくなりましたよ?といわれても困るだろうし。 PHPも3,4,5でメチャクチャ変わってるジャン。 ポリシー無くあれほど仕様が変わる言語はPHPぐらいしか知らない。 php4の経緯は酷いもんだったな
アップデートしたら全phpファイル再確認と再テストの悪夢、
アップデートしなければエクスプロイトが出回ってるなかガクブル
php5以降はまともな方かな。
ruby1.8未満/ruby1.9開発版現状よりはマシだと思うよ PHPは6でgoto導入ですよ。
楽しみですねー。 Matzの会社を財務分析してみたんだが。
http://d.hatena.ne.jp/AntiSeptic/20080704/p1
などと思わせぶりな言い方をするものだから覗いてみりゃ、
なんて事無い田舎の零細企業の財務諸表であって、面白くもなーんともなかったわけだ。
それにしても、この程度の収益で2007年度って、
あの会社にとっては多分空前絶後の景気のいい年だったはずだの
Rubyとゆー「鉱脈」があるだの言っているのは何なのだ。
Geekのヨタ話というのは、いつもこんなしょぼいスケールで行われているのか?
あそこの技術者の平均レベルは、他の普通の会社よりはずっと高いと思うって、
これじゃあ、技術なんてIT企業の収益とは何の関係も無いと証明しているようなもんじゃねえか。
そもそも、この会社が何をやっているのかがHPを見た限りではよく分からん。
要は受託開発だろ労働力を人月で売ってるだけだろマーケ屋がこねくりあげた横文字得意げに使ってなに悦に入ってやがんだコラ。
更には製品・サービス部門まであって、なにやら参考価格が書いてあるところを見ると、
多分にパッケージっぽい印象を受けるが、それでいて全体の粗利率が26%程度ではどうしようもないだろ。
あそこに入りたい人は、損益計算書も注意して見ておくといい。まぁこれはどんな会社でも同じだけど、
ここを見るといろんなことが見えて来る。株価指標を計算してみるのもいい(非公開会社でもね)。 ↑このコピペいろんなところに貼ってる奴なんなの?きめえ Matzの日記初めて読んだ
www.rubyist.net は不正なセキュリティ証明書を使用しています。
発行者の証明書が信頼されていないためこの証明書は信頼されません。
この証明書の有効期限は 06.11.7 10:07 AM に切れています。
(エラーコード: sec_error_untrusted_issuer)
>>125
まさかw
世界中で使われているPythonに失礼だよ
Rubyなんて国内で少し使われている程度 http://pc11.2ch.net/test/read.cgi/tech/1180713251/344-
344 :デフォルトの名無しさん:2008/07/18(金) 00:56:41
>>334
同意。
PerlのEncodeは終わってる。
言っておくが、自分には使える。
Perl好きだし、Encodeモジュールもわかっているつもり。
ただ、そこまでPerlにはまっていない周りには使えないし、わかってもらえない。
これが致命的。
(よくはまるのは、UTF-8フラグのついた文字列と
バイト列としての UTF-8文字列の違いとかのあたり)
それに、ソースコードを UTF-8 で書くと、システムがローカルエンコーディングの場合
ファイルを開いたりするのさえ面倒。
Unicode がらみのスクリプトを書くたびに、
sub e { Encode::encode('cp932', $_[0]) }
sub d { Encode::decode('cp932', $_[0]) }
sub E { map { Encode::encode('cp932', $_) } @_ }
sub D { map { Encode::decode('cp932', $_) } @_ }
↑こんなのを上に貼って、
open IN, e"日本語.txt";
とか書いたり、デバッグする時に
b 30 ($str eq d"日本語")
とかやったりしてるけど、正直言って超バッドノウハウ。
人が見てもやっぱりわからないし。 フレームワーク祭りが終われば、rubyの居場所がどこか気付くはずだよw >>126
アホか。
使われてるかどうかを判断基準にしたら、
Rubyの相手なんて居なくなってしまうだろ。 wikiの比較サイトがあるのだが・・
言語別のwiki数みたいなリストはないんだけど、主な言語を検索して調べてみた
PHP 27
Java 20
Perl 10
C# 8
Python 7
ASP 4
Ruby 2
実感に近い感じかな。
Ruby1.9.1が正式リリースしたのでやって来ました。 Perl - 本来?のシェルスクリプト代替用途に落ち着く
PHP - 現在最も利用者数が多いと思われるが、ツギハギだらけでそろそろ限界が近い。i18n的に弱い。
Python - OOP仕様の導入で躓いたPerlの後継を狙うが、3.0での大幅変更に異論噴出。
Ruby - Railsの登場により脚光を浴びるが、Ruby自体はあまり普及に意欲的では無い。BSD臭。
というのが個人的感想。 PHPとRubyの論争見ていていつも思うんだが、
こいつらの関係って日本と韓国の関係に似てるよな。
<丶`∀´>RubyはPHPより優れてるニダ!
( ´∀`)Ruby?なにそれおいしいの? Rubyコミュニティはあんま好きじゃないけどそれは違うと思う > こいつらの関係って日本と韓国の関係に似てるよな。
それは私も感じたことがある。
<丶`∀´>PHPはYahooでも採用されているしシェアも最強ニダ
( ´∀`)変なのにつきまとわれてるよ・・・
粗悪だが低価格で貧困層にもリーチしてシェアを築き数値だけみてホルホルする韓国企業と
パクリ&魔改造で本家を上回る性能を作り出すが要領の悪い日本企業
PHP厨はあまり日の目をみない(と感じる)Rubyよりは当然格上だと思ってるのに対して(ウリが世界一)
Ruby厨は低スキル・Web用であるPHPはそもそもアウトオブ眼中(無韓心)。
他にも
・〜 VS PHPというようなスレを立てたがるが大抵論破される(すぐ日本と比べる記事を書くが意味不明なグラフ等で墓穴を掘る)
・唐辛子(PHP)の起源が他国(Perl)だというとファビョる
PHPもRubyの宗教じみた雰囲気も嫌いな第三者目線ではこんな感じ >>139
そうそう、そんな感じwww
アンチRubyが韓国の関係みたいなw JoomlaなんかはRubyじゃ100%作るのは不可能! やはり Mediawiki とか Wordpress レベルがほしい。
hiki や tDiary はご冗談でしょう、というレベル。 CakePHPとRuby on Railsが好きな自分はどうしろと…。 >>142
Railsで作ればいいと思うけど、RubyというかRailsのキツイところはデプロイとサーバー環境の用意なんだよな。
極端な話、WordPressはCGI版PHPでも、それこそ月500円の共有レンタルサーバーにおけばそこそこ動く。(MySQLはいるが)
ところが、Railsは無理。apacheならPassengerくらいはいる。
しかも共有サーバーだと入っているところはほとんどない上に、
Dreamhostとか共有で入っていても、まともに動かん。
少なくともVPSを借りる必要がある。共有サーバーよりは高いうえに、一般人には面倒な鯖の管理がいる。
MediawikiとかWordpressみたいに一般ユーザーが設置して使うものには向いてない。
逆に、BTSのRedmineみたいに開発者=ユーザーみたいなツールは結構広まってきてる。
まあそれぐらいかもしれんがw
Railsは公開型の小規模で少期間で開発するwebサービスの開発に向いている、という話もあるが、
そんなのはPHPだって、なれた好きなフレームワーク使えばできるがなというお話 PHPは言語仕様は糞だが、mod_phpは非常に優れてる。何も考えずにプログラム書いても、たいていの場合、それなりのスピードで動く。 rubyのウェブアプリって動きが緩慢で良い印象を持てない。主観だけど(笑) rubyは全てオブジェクトだから
num = 12.67.to_i
みたいなことができる。
それはオブジェクト指向としてはあるべき姿だと
Javaなんかやってると特に思うけどその代わり速度は遅い。 >num = 12.67.to_i
これが出来ると出来ないとで、一体何がどの程度変わるのか >一体何がどの程度変わるのか
こういう思考をしているようじゃ分からないだろ。
Javaのプリミティブ型の気持ち悪さなんかな。
文字列はオブジェクトだけど数値はオブジェクトじゃないんだぜ? >>154
で、気持ち悪くなくなると、何が良くなるのか。
動作効率が上がるとも思えないし、
…まさかバグが減るとか言わないよな? Rubyは作っているおっさんが気に入らない。
本を出しすぎ気に入らない。
そもそもRubyもPHPもツールにすぎない。
まあもちろんどの言語にも脆弱性がありバグがあるかもしれないが
人それぞれ使う目的によって使うものである。
システムも動いて、それでたくさんの人に使ってもらえれば
それでいいと思う。インターネットは本来そのための道具である。
別の言語の批判など本来まつもと氏はするべきではない。
まあ確かに最初学ぶべき言語としてPHPはどうかとは思うけど >>155
何が良くなるとかそんな話してないんだけど。
オブジェクト指向は速度的には遅くなるよ。
Rubyなんか速度でPerlに勝てるわけねーし。
お前みたいな思考してる奴には何も言うことねーよ。
黙って屑みたいなスクリプトをシコシコと買いてろよアホンダラ Webアプリケーションで言語の速度が問題になることはまずない
ボトルネックはディスクIO(DBアクセス)が大半 >>152
> rubyは全てオブジェクトだから
まだそんな受け売り信じてるのか
Ruby信者でももうその一文には触れないぞ・・・
誰かいい加減、Wikipedia直してきて
>>161
逆にオブジェクトじゃない箇所を挙げて! 制御構文はオブジェクトではない。
あと、メソッドが一応オブジェクト化はできるものの1st class objectじゃない。 Mono最強伝説
http://ja.wikipedia.org/wiki/XSP_(Web%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC) 言語の優劣はともかく、働き口はPHPのほうが遥かに上 俺はゴミカスだがエリートゴミカスだ
お前らのような下級ゴミカスとは格が違う
Rubyの方が遥かに上だ
俺の中ではな 刺身にタンポポを載せるのがPHP
刺身に食用菊を載せるのがRuby
まさに雲泥の差だ
これならお前らゴミカスでも理解できるだろう ■ このスレッドは過去ログ倉庫に格納されています