トップページphp
985コメント235KB

Python vs Ruby vs PHP vs Perl

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/08/22(月) 20:28:32ID:???
どれを学べばいいの?
0617nobodyさん2006/06/19(月) 12:12:50ID:???
妄想無職乙!
Oracle使う規模の仕事でいきなりPHP+PostgreSQLになっちゃうのw
金融系やってるプルグラマーが大量に無職になるわけだw
いやこえー話だw

自暴自棄になって妄想膨らまさないで、今日はもう早く職安行けよ!
0618nobodyさん2006/06/19(月) 14:24:01ID:???
まぁ、無駄にJava+Oracle使ってる所はあるだろうね。
そんなにクリティカルじゃない所で、とりあえず使っとけみたいな感じで。
そういうのはリプレース可能じゃないかな。
0619nobodyさん2006/06/19(月) 23:35:56ID:???
「とりあえずOracle」って有り得ない…1CPU幾らすると思ってるんだ。
0620nobodyさん2006/06/19(月) 23:43:00ID:???
>>619
Oracleしか知らない会社とかってあるよ
0621nobodyさん2006/06/20(火) 01:02:37ID:???
>>617
金融系とかまでいくと逆にOracleなんか見かけないわけだが

>>619
とりあえずOracleってよりオープンソースのDB使うと客が不安がるらしいよ
あとは金さえ払えばサポートが受けられるとことかじゃね
0622nobodyさん2006/06/20(火) 05:51:01ID:???
もうやめようぜ。
仕事じゃ、業務じゃ〜〜
無職だの有職者だの
javaだOracleだとかスレの趣旨から離れてる。


とりあえずPHP最強って事でみんな矛を納めてやってくれ、この通りだ<(_ _)>
0623nobodyさん2006/06/20(火) 13:06:28ID:???
それにしても名前空間使えないのは致命傷だろ。
PHP5 だと限定的だが使えるんだっけ?
0624nobodyさん2006/06/20(火) 16:55:44ID:???
PHPでOOするくらいなら、まだしもPerlでやるよな…
環境までいじれるなら、PythonやRubyも候補にあがるけど、そうでなければ使える保証がないのが残念
0625nobodyさん2006/06/20(火) 21:47:07ID:???
OOならJavaだろ…。
0626nobodyさん2006/06/21(水) 01:06:48ID:???
ウェブアプリにオブジェクト指向は要らないだろ。
0627nobodyさん2006/06/21(水) 01:36:09ID:+cZesXXg
なんでPythonスレは無いの?
0628nobodyさん2006/06/21(水) 02:02:58ID:???
ちゃんとあるよ!

http://pc8.2ch.net/test/read.cgi/tech/1099804004/
0629nobodyさん2006/06/21(水) 04:05:47ID:???
>ウェブアプリにオブジェクト指向は要らないだろ。

KENT-WEB CGI?
0630nobodyさん2006/06/21(水) 10:08:08ID:???
>625
Ruby には Ruby の、Java には Java の OO 哲学がある。
0631nobodyさん2006/06/21(水) 11:59:00ID:???
> ウェブアプリにオブジェクト指向は要らないだろ。
そう思うのはKENTレベルの底辺perlerとPHP厨だけだろ
0632nobodyさん2006/06/21(水) 22:18:16ID:???
手段であるOOを目的にしてしまう時期が誰にもある…
0633nobodyさん2006/06/22(木) 10:18:54ID:???
オブジェクト指向はもともとGUI向けの開発手法だからな
0634nobodyさん2006/06/22(木) 15:12:24ID:???
これはひどい
0635nobodyさん2006/06/22(木) 21:41:10ID:???
>>626
つ、釣られないぞ
0636nobodyさん2006/06/22(木) 22:00:11ID:???
>>624
perlでやるならまだPHPでやるよ
0637nobodyさん2006/06/23(金) 00:10:38ID:???
その辺で配ってるチャットだの掲示板だののCGIの量は圧倒的にperlだからperl最強?
あとはPHP、rubyの順かなぁ。pythonは見たことない。
0638nobodyさん2006/06/23(金) 00:31:07ID:???
>>637
趣味でつくったようなゴミみたいなのはPerlが多いね。
グループウェアやCMS、プロジェクト管理系のオープンソースソフトウェアは
PHPやPythonのが多い。
0639nobodyさん2006/06/23(金) 06:32:01ID:???
>>638
あれって不思議だと思ったことない?
非OOのPHPこそ、趣味で作る糞みたいなのに向いてて
ちょっと大き目のオープンソースこそOOなperlとかrubyが向いてる気がするんだが
pythonは日本人ユーザ少なすぎ
0640nobodyさん2006/06/23(金) 06:39:05ID:???
>>639
不思議でもなんでもないよ。
safemodeでの実行速度考えたら、安価な共用鯖でも使えるPHPを選択するのは当然。
大きめのオープンソースって何のこと言ってるか分からんが、PHPレベルのOOじゃ無理って
規模のものなんてないし。

PerOOは癖ありすぎ。向いてるとはとても言い難い。
まぁでもsafemodeはPHP6でなくなるって言うし、これからはRubyが増えていくんじゃない?
0641nobodyさん2006/06/23(金) 06:44:52ID:???
>640
でもさ、PHPレベルのOOって?
PHPでちゃんとOOできるのって5からじゃなかった?
PHP5を動作環境としたら、安価な共用鯖で使えなくなるんでない?

おれがちょっと見たPHPのオープンソースプロジェクトは
どんどん規模が膨れてるのに、OOじゃないから
みるみるスパゲティ化してた
0642nobodyさん2006/06/23(金) 10:22:25ID:???
Perlは汚いコードが書けるから敬遠されてるけど
綺麗に書こうと思えばそれも可能だし、
多少癖はあるけど大規模開発も十分できる。

正直PHPがなぜ生き残ってるのか分からん。
HTMLに埋め込めるのが利点だったはずなのに
テンプレートマンセーでコミュニティにすら否定されてるし。
つか、なんでPHP使ってるのか。>Smartyとか駆使してるやつら
0643nobodyさん2006/06/23(金) 10:42:29ID:/G7lBdZv
Perlの複数人開発はちょっと嫌だな。
PHPはPEARの標準コード規約があるから、それなりに読みやすいコードになる。
0644nobodyさん2006/06/23(金) 16:06:56ID:???
マジレスすっと、最近はエンタープライズ分野でも
PHPが主流になっているようだな。
0645nobodyさん2006/06/23(金) 17:27:30ID:???
消去法で PHP が残っているだけだろ
0646nobodyさん2006/06/23(金) 17:47:55ID:???
>>643
PHPだけが特別そうしているとでも言いたげに読めるのは気のせいか。
Perlを批判するPHP厨の多くは批判できるほどPerlのこと知らないよね。

てか

△△を批判するPHP厨の多くは批判できるほど△△のこと知らないよね。
0647nobodyさん2006/06/23(金) 17:49:43ID:???
>>646の心が読めた、俺はテレパス。
「PHP厨はPHPしか知らないのに批判したがるから困る」
0648nobodyさん2006/06/23(金) 17:54:59ID:???
田舎の零細ITとか未だにPerlつかってるとこあるよな
なんか10年前で止まってる感じ
0649nobodyさん2006/06/23(金) 17:56:17ID:???
mixiやはてなもPerlだけど
0650nobodyさん2006/06/23(金) 17:57:50ID:???
ISPとかネットワーク系の企業はPerl多いよ
0651nobodyさん2006/06/23(金) 18:03:33ID:???
はてなはRubyもちょこちょこ使い始めてるね。
何使っても一応Webサービスはできるなぁ。
0652nobodyさん2006/06/23(金) 23:56:45ID:???
「結局、言語はなんでもよい」という結論はスレ的には禁句。
0653nobodyさん2006/06/24(土) 08:31:56ID:???
でも Web サービスに Java は難しくない?
小回りが効かないし、インフラ環境が高くつくから。
0654nobodyさん2006/06/24(土) 15:33:53ID:???
PHPよりはPerlの方が信頼できる気がするけど俺だけ?
0655nobodyさん2006/06/24(土) 17:26:13ID:???
君だけだと思うよ。


一体、何を比べて何をもってして信頼出来るっていってるのか
サッパリわかんないからねw
0656nobodyさん2006/06/24(土) 21:12:03ID:???
うむ。根拠も示さず「信頼できる気がする」なんて反疑問系で
言う奴のことなんか信頼できるとでも思うか。
0657nobodyさん2006/06/25(日) 02:52:12ID:0Rk1Lpe5
Cで書け
0658nobodyさん2006/06/25(日) 07:05:08ID:???
釣られ過ぎじゃね?w
0659nobodyさん2006/06/25(日) 13:23:09ID:???
釣りw
便利な言葉だなw

過疎スレで暇だからみんなレスしてやってんのにw
間抜けだなw
0660nobodyさん2006/06/25(日) 16:29:26ID:???
ここまでスレ読んで分かったぜ!全部出来れば問題ないんだな!?
0661nobodyさん2006/06/25(日) 16:46:08ID:???
そして全部出来なくても問題は無い
0662nobodyさん2006/06/25(日) 22:31:47ID:???
>>660
ついでだからLispとbshとcshとawkとsedもマスターしとけ
0663nobodyさん2006/06/25(日) 23:13:39ID:???
>>659
>過疎スレで暇だからみんなレスしてやってんのにw
そんなに暇なんですか?あなた
0664nobodyさん2006/06/25(日) 23:21:53ID:???
かつて、webアプリケーションを作るのが最も簡単だった言語は、Perlだけだった。
やがて、PHPが生まれ、Perlユーザの一部がPHPへと流れた。
時が過ぎ、Webアプリケーションに対する要求も複雑化し、
モジュールを使わないと例外処理ができないPerlや、名前空間の無いPHPでは
限界を感じるユーザが現れ始めた。
そして現在、Python、Rubyに注目が集まっているのです。
0665nobodyさん2006/06/26(月) 03:41:47ID:???
多分、このスレ見て勘違いしたんだろうけど、Perlは標準で例外処理あるよ。ただ、モジュールを使えばJavaなど多言語の例外処理と形が似たように書けるってだけ。
0666nobodyさん2006/06/26(月) 05:20:53ID:???
>>614
> Java+Oracleなら50人/年で、PHP+PostgreSQLで10人/年になる仕事ってなんだよw
感覚的にそんなもんだろ?replace案件受けたことないなら分からんか。
これから新規でウェブサイト立ち上げるときにJavaを選択するのはあり得ないね。客も気付き始めてるよ。

>>643
> Perlの複数人開発はちょっと嫌だな。
> PHPはPEARの標準コード規約があるから、それなりに読みやすいコードになる。
標準コード規約に従わないやつがいたらどうなると思う?
Perl::Tidy知りませんか?

>>648
> 田舎の零細ITとか未だにPerlつかってるとこあるよな
> なんか10年前で止まってる感じ
それはお前の脳内が(ry
CPANという言語拡張を知らないからそう思うだけだろう。

>>664
> モジュールを使わないと例外処理ができないPerlや、名前空間の無いPHPでは
665が言ってるようにお前が良く知らずに悦に入ってるだけ。
0667nobodyさん2006/06/26(月) 05:33:43ID:???
>>665
書いてみて
0668nobodyさん2006/06/26(月) 05:36:26ID:???
このスレ見て勘違いじゃなくても、どこ見ても例外処理はないって書いてあるよねw
0669nobodyさん2006/06/26(月) 06:14:13ID:???
PerlのOOって、冗長になりまくるからなぁ
名前空間無くてもまだPHPのが読みやすく作れるよ…
0670nobodyさん2006/06/26(月) 06:44:58ID:???
つーかなんでPerl使うの?
0671nobodyさん2006/06/26(月) 07:56:38ID:???
>>669
package MyClass;
use base 'Class::Accessor';
__PACKAGE__->mk_accessors('name', 'age');

nameとageのgetter,setterを持つクラスかいてみたけど、
PHPでこれより読みやすく書いてみて。
0672nobodyさん2006/06/26(月) 08:33:25ID:???
例外処理のモジュールもあるけど、標準のだけで書こうとするとこんな感じ。

eval {
 # try
 ...
 # throw
 die "Error";
};

# catch
if ($@) {
 ...
}
0673nobodyさん2006/06/26(月) 09:16:25ID:???
というか、PHPの方が例外処理やりにくいと思う。特にPHP4。
まだ環境的にPHP5に移行できない人が多いだろうし。
0674nobodyさん2006/06/27(火) 00:12:03ID:???
PHPをソースからコンパイルした奴ってアップデートするときってどうやってるんだろ?


ごめん。人のセイにしたけど本当は俺が知りたいの
0675nobodyさん2006/06/27(火) 00:14:29ID:???
もちろんソースからコンパイルするけど
0676nobodyさん2006/06/27(火) 00:51:18ID:???
まあ、PHPはアップデートがウザイね。Perlなら、モジュールだけで上げればいいけど。
0677nobodyさん2006/06/27(火) 11:28:27ID:???
>>667>>669はどこいった?
0678nobodyさん2006/06/27(火) 23:15:19ID:???
手に手を取ってバカンスへ
0679nobodyさん2006/06/27(火) 23:31:24ID:???
いやんばかん
0680nobodyさん2006/07/04(火) 03:29:12ID:???
http://www.google.com/trends?q=perl%2Cpython%2Cruby%2Cphp&ctab=0&geo=all&date=all
参考までに
0681nobodyさん2006/07/05(水) 22:35:38ID:???
じゃ俺も
http://www.google.com/trends?q=perl%2Ccobol%2Clisp%2Cpascal%2Cc%23&ctab=0&geo=all&date=all
0682nobodyさん2006/07/06(木) 02:25:57ID:???
>>681
C#が一時期ガクっと落ちてるのが気になるなw
0683nobodyさん2006/07/07(金) 18:32:20ID:???
>>671
これはPerlでクラスを定義しているのかな?
おれPerlよくしらんのだけど、ぱっと見ただけでは何やってるのかさっぱりわからん。
「これより見やすく書いてみて」ってあるけど、たいがいの言語ならこれより見やすく書けるだろ。

class MyClass {
 var $name, $age;
}

class MyClass
 attr_accessor :name, :age
end

>>671の例は、たしかに簡潔なんだろうけど、わかりやすいとはとても思えん。
アクセッサが簡単に定義できるということをいいたかったのかな?
0684nobodyさん2006/07/07(金) 18:39:04ID:???
>>683
上のはPHPだろうけど、それはちょっと違うかと。
accessorメソッドを定義できたわけじゃないので。

>>671 は、PHPだとこの場合、メソッド4つ定義しなきゃだめだろ
と言いたいんでしょう。
まぁ >>671 はそんなに分かりやすくないと思うけど。

下のはRubyだね。そっちは正しい。
0685nobodyさん2006/07/08(土) 00:02:55ID:???
Perlのオブジェクト指向は見やすくはない。一般的な、他の言語のオブジェクト指向とは大きく書式が違うから。
ただし、簡潔さはある。Perlは冗長さを徹底的に排除できる言語だから。オブジェクト指向に限らないけど。
0686nobodyさん2006/07/08(土) 00:37:33ID:???
CPANの使うだけなら楽だわな
自分でクラス定義書こうとは思わないが
0687nobodyさん2006/07/08(土) 01:52:42ID:???
Perlはプログラムを理解する脳力をプログラマに責任転嫁し、
RubyはPerlの全ての罪をMatzにつぐなわせ、
Pythonはプログラマからタブ文字を奪いさる。
そしてPHPは全ての救い難き衆生を10万億土に得度する阿弥陀仏。ありがたや。
0688nobodyさん2006/07/08(土) 05:23:53ID:???
>>685
>簡潔さはある。
ねぇよw
メソッドに初期値いれるときどうするの?
0689nobodyさん2006/07/08(土) 05:30:32ID:???
>>685はPerl5と共に進化が止まっちゃってるんだろ。
0690nobodyさん2006/07/08(土) 05:35:26ID:???
つーか前の流れでモジュール使わなきゃ例外もまともにできんとか言われてるのに、
さっそく>>671でモジュールつかっちゃってるしw
0691nobodyさん2006/07/08(土) 05:43:32ID:???
>>684
PHPの例もそれで問題ないでしょ。
パブリックに取り出しも設定もできるんだし、
逆に>>671でやってることも取り出しと設定しか出来ない
もん定義してるだけでしょ?一緒じゃないの?
0692nobodyさん2006/07/08(土) 07:19:50ID:???
>>691
おいおい、一緒じゃねーよ。
インスタンス変数への直接アクセスと、アクセッサを介したアクセスは、
結局やることは同じかもしれんが、情報隠蔽という考え方からみて全然違う。
いくらなんでもそれはオブジェクト指向の基本をわかってない。
0693nobodyさん2006/07/08(土) 07:31:34ID:???
PerlもPHPも、もとはオブジェクト指向ではなかった言語に後からオブジェクト指向の
機能を付け加えたから、不自然な感じは否めない。特にPerl。

それに比べ、Pythonもあとからオブジェクト指向の機能が追加された点では同じなんだけど、
不自然さはない。
もとはモジュール指向の言語で、そのモジュール機能を拡張したのがPythonのクラスなんだけど、
それがすごく自然になじんでる。
アクセス制御がすこし弱いのと、メソッド定義において最初の引数にselfを明示的に
指定しなければいけないのが気になるけど、それ以外はよくできてる。

こうしてみると、言語設計者のセンスの違いを感じる。
PythonかわいいよPython。
0694nobodyさん2006/07/08(土) 07:36:22ID:???
アクセス制御はもうみんな大人なんだから、て話だったな
selfはそのうち慣れる。むしろあった方が分かりやすいと俺は思うようになった
0695nobodyさん2006/07/08(土) 07:43:48ID:???
>>694
インスタンスメソッドの呼び出しや、インスタンス変数へのアクセスのためにselfを使うのはいい。
しかしインスタンスメソッドを定義するたびに、最初の引数にいちいちselfとしなきゃいけないのが面倒だし読みにくい。
これは慣れないし、なくしても害はないはず。

あ、あと親クラスのメソッドを呼び出すときがださい。親クラス名を書かなきゃいけないし。
super()とかで書けるほうがうれしい。
0696nobodyさん2006/07/08(土) 09:10:57ID:???
コードの可読性について語って。
ソースを納品させて、その担当の
プログラマーが辞めちゃったり、
氏んじゃったりしたら、別のプログラマーに
そのソースを渡して、続きを書いたりして
もらう、という状況を想定して。
0697nobodyさん2006/07/08(土) 09:54:42ID:???
>>696
> プログラマーが辞めちゃったり、
> 氏んじゃったりしたら、別のプログラマーに
> そのソースを渡して、続きを書いたりして
そんな職場ならすぐ逃げ出すのが先では?
0698nobodyさん2006/07/08(土) 10:53:54ID:???
>>697 無職はすっこんでなさい。
0699nobodyさん2006/07/08(土) 11:04:17ID:???
可読性は Python >= Ruby >> PHP >> Perl
Pythonはたいへん読みやすい。
Rubyで書かれたスクリプトは読みやすいんだけど、メタプログラミングされるとわけわかになりやすい。
Perlの読みにくさは頭ひとつ抜け出してる。Perlのモットーである「TMTOWTDI」(やり方はひとつではない)は、メンテする側からみると悪。
0700nobodyさん2006/07/08(土) 11:13:19ID:???
じゃあpythonを採用するお
0701nobodyさん2006/07/08(土) 14:10:08ID:???
>>696
ただ、>>696の前提で言うと、「その言語をマスターしている人員を確保できるかどうか」がもっとも重要な要因だと思う。
その意味で言うと、日本においてはPythonはPerlやPHPやRubyと比べてマイナーなので、Pythonを知っている人間を確保するのが難しい。
だから日本限定で考えるなら、Rubyのほうがいいと思う。
ヨーロッパならPythonがすごい人気なんだけどね。
0702nobodyさん2006/07/08(土) 14:37:54ID:???
ヨーロッパから人を確保すればいいんじゃね?
0703nobodyさん2006/07/08(土) 19:14:45ID:???
ぼけたつもりなんだろうか。。。
0704nobodyさん2006/07/09(日) 00:08:24ID:1tf/JQSh
PHPはパッケージが作れないのがいたいね。
このクラス・関数がどのファイルで定義されているのか追っていくのがキツイ。
パッケージがないから、ろくなライブラリが育たず、この5年で見ても死屍累々とすでに使われなくなったライブラリの山。
最近のPHPプログラマーが昔(と言っても3−4年前)のソース見ると、訳の分からないコードになってる。
0705nobodyさん2006/07/09(日) 04:07:40ID:???
>>704
だね。
OOひとつやるのにもモリモリモジュールだらけになっちゃうPerlと一緒で、
痛いよね。
この2言語はもう駄目だね。
0706nobodyさん2006/07/09(日) 04:43:57ID:???
Perlは廃れ始めると有名な人達がいわゆるクール(笑)な何かを作るから困る。
この悪循環でPerlは何年も延命してきている。たとえハック(笑)に優れていても、
彼らには人類にとって負の遺産を存続しているという罪悪感が無い。
突き詰めれば核兵器開発に携わる優秀な技術者と変わりない。
要するにただの馬鹿だ。
0707nobodyさん2006/07/09(日) 04:51:51ID:???
>>706
>突き詰めれば核兵器開発に携わる優秀な技術者と変わりない。
それは良くいいすぎ。
おじいちゃんが大好きな、過去を美化した昔話みたいなもんでしょ。
それ自体はボロボロだけど、おじいちゃんの脳は、それをどんどん素晴らしい物へと
変えていく。
0708nobodyさん2006/07/09(日) 05:40:49ID:???
お互いにこけにしあってるだけで、結局どんぐりの背比べじゃんw
0709nobodyさん2006/07/09(日) 05:44:26ID:???
>>708
どんぐりの背比べじゃなくて、どっちも使うなということです。
0710nobodyさん2006/07/09(日) 07:08:11ID:???
perl6は後方互換なしで0から再スタート
0711nobodyさん2006/07/09(日) 07:24:51ID:???
なるほどな、PerlはLightweight Language界のCOBOLというわけか。
言語としては時代遅れだけど、過去の遺産が大きくていまさら乗り換えられない。
0712nobodyさん2006/07/09(日) 07:35:08ID:???
>>710
その方がいいとは思うけどね。
出ればの話ですが…

0713nobodyさん2006/07/09(日) 09:58:52ID:???
>>712
本家見てれば分かるけど、今更出ないという事はありえない。
0714nobodyさん2006/07/09(日) 10:24:35ID:???
>>713
本家見てないから分かりません。
0715nobodyさん2006/07/09(日) 11:47:24ID:???
Gentoo : IntelR PentiumR?4 Computer Language Shootout Benchmarks
http://shootout.alioth.debian.org/gp4/index.php
0716nobodyさん2006/07/09(日) 13:03:53ID:???
>>715
Ruby遅いな・・・
0717nobodyさん2006/07/09(日) 16:51:53ID:???
>>713
じゃぁいつ出るの?
■ このスレッドは過去ログ倉庫に格納されています