• ベストアンサー

perlとphpの違いについて

perlとphpの違いについて perlとphpのどちらを学ぼうかまよっているのですが、それぞれのメリットデメリットについての比較は調べたものの、perlでできてphpでできないことやphpでできてperlでできないことについてよく分かりません。 どなたかご教示いただけますと大変助かります。よろしくお願いいたします。

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

  • ベストアンサー
  • gtx456gtx
  • ベストアンサー率18% (194/1035)
回答No.1

PHPはWebで公開するHPを記述するための言語で、Perlは「Webで公開するHP」も記述できる利用用途の広い言語です。 Perlは、有名なAWKの拡張版という位置づけで本来は文字列の処理を記述するのに便利な仕様になっています。 詳しくはWIKIを参照して下さい。 Perl http://ja.wikipedia.org/wiki/Perl AWK http://ja.wikipedia.org/wiki/AWK

m-piyo
質問者

お礼

ありがとうございました。要はやはりperlのほうが用途は広いということですね。その分習得には時間がかかるのかもしれませんが。。取り組んでみようと思います。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • nak777r
  • ベストアンサー率36% (49/136)
回答No.3

perl と php の一番大きな違いは古いか新しいかで、 perl は古い分、実績があり php は新しい分、色々と便利だったりします 取り敢えず、最初は狭く浅く 両方を触ってみては如何でしょうか HTMLでホームページを作る場合、 HTMLから POST 又は GET で cgi 又は php にデータを渡す ----------------------- cgi 又は php 側の処理 ・POST 又は GET で情報をもらう ・日本語コードの変換処理を行う ・情報を元にファイルを読み込む ・情報をファイルに書き込む ・HTML形式で出力する ----------------------- 最低限、両方の言語で、覚えていて損は無いレベルです。 少なくとも、両方の言語で、カウンターと 簡易掲示板が作成できるレベルになります。 後は、実際両方で作成してみて、自分にあった方で データベースを利用にはどうすればよいかとか、 細かい分岐の処理とかを勉強していけば いいのでは無いでしょうか

m-piyo
質問者

お礼

実はRuby( on Rails)やJAVA等については実務でも利用しているので、それらを使ってWebシステム(アプリ)の開発はできるレベルです。さらに、自己研鑚のため別のスクリプト系の言語を学びたいなぁと思い、PerlとPHPどっちをやっていこうかなと思い今回質問をいたしました。肝心な補足がなくてすみませんでした。。御回答大変参考になりました。ありがとうございました。

すると、全ての回答が全文表示されます。
回答No.2

kamuycikapです。 これは、宗教戦争と比喩しても大げさでない論争として、海外でも沢山とりあげられています^^; 結局のところ、どちらを採用するのかは目的に寄って左右されるので、優劣のつけられない内容だと自分は理解しています。 私はどちらの言語も利用してサイトを開発していますが、その時その時の臨機応変・・・・つまり応用です。 phpで開発したほうが早く完成する場合もありますし、慣れていればperlでチャチャっと出来たりするパターンもあります。 perlが世の中に出現したとき、それは救世主のように感じられました。 それまで、苦労していた内容が従来よりも比較的簡単に解決することができ、構造化プログラミングも分かりやすく書く事ができます。 それまで、bashスクリプトやC言語で書いていた処理を簡単に記述することが出来たからです。 後発のphpはwebに特化したスクリプト言語として登場し、perlの良い部分も吸収しながら独自路線を走り続けています。 perlでも処理を書く事は出来るけれど、phpならこんな感じで簡単にかけるんです!!!的なふれ込みもあり、perlは時代遅れでphpが救世主!!的な主張も多くの掲示板で書き込まれています。(国内外) しかしながら、perlが培ってきた過去の遺産や実績はすばらしいもので、phpに取って変わられる事はありません。 perlで書かれた処理をphpにわざわざ書き換えるメリットも見いだせない場合が多いのです。 perlは絶対になくならないでしょう。 だからと言って、phpが無視されることはありません。 phpの利点は、大規模な処理を設計する場合に、比較的分かりやすく記述することが出来、記述が複雑にならないように工夫することが出来るので、すっきりと見やすいプログラムを書く事が出来ます。 perlでもオブジェクト指向が取り入れられ、大規模処理に対する対応を強化していますが、その構造を理解するには慣れが必要なことも事実です。 事実、プログラマの技術力にもよりますが、書いた本人しか理解出来ない複雑なソースコードになり易い事が度々指摘されてきました。 RubyやPython、特にDelphiやC#と言ったオブジェクト指向タイプの言語を触ったことのある人なら、perlよりもphpを好むでしょう。 個人的な感想ですが、perlのオブジェクト指向はRubyやPython等に比べると少々癖があります。 もちろん、phpを使ってもプログラマによっては???????なソースコードになる可能性も大いにあります。 回答になっているかどうかわかりませんが・・・・・つまり・・・・ perlもphpで優劣を比べることは出来ないと思います。 なぜなら、結局どっちも同じ結果を産み出せるからです。 「うどん」と「そうめん」どっちが旨いの??? って論争と似ている感じも受けます。 どっちもうまいんだけれど・・・・どっちも夏はめんつゆつけて食べられるし・・・冬はあったかくしてたべられるし・・・といった感じですよね。 質問者様が、どのような処理を書きたいかによってperlを利用するかphpを利用するか選択するべきですね。 どちらも結局は同じことが出来てしまいますから。 開発の現場によっても、どちらを採用するかはその時の技術者のスキルと開発期間によって決定しますから。 うちの現場では・・・・新規モノはphpでの開発が多いです。サーバー側にすでに開発環境が構築されていて、主要なライブラリも導入されているケースが多いのがその理由です。 従来のperlシステムを変更したり新たに機能追加する場合は、当然ながらperlで書きますし、ちょっとした文字処理スクリプトやCGI程度ならperlですませちゃったりします。 Rubyが動くならRubyで書いたりもします。 あとは・・・好みの問題ですね。^^

m-piyo
質問者

お礼

なるほど。。大変難しい問題だったんですね。やはりどんな開発をするのか何を作りたいのか、その案件に応じてベターな言語が変わってくるということですね。私はRuby(onRails)は好きなのですが、リファクタリングを考えるとなかなか難しい問題があるなぁと思っていました。皆様のご意見を踏まえ、まずはPerlに着手しつつ時期をみてPHPにも手を出してみようかなと思います。御回答大変ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A