なぜPHPはそんなに嫌われているのですか?[閉まっている]


17

最近、PHPがどれほどひどいものであるかについて、いくつかのジョークや漫画に出くわしました。

言語の完全な無知として、これはなぜですか?それは私自身の認識ですか、それともプログラミングコミュニティの全体的な一般的な感覚ですか?


2
私はC#でソフトウェアを作成し、Microsoftのすべての批判を聞きます。それは、他の言語をほとんど単に打ち負かすだけです
Scott Selby 14年


4
:@Andy 1はジェフのブログの投稿を忘れてはならないPHP特異点PHPを吸う、しかし、それは問題ではありません

5
誰もが嫌いな言語と、誰も使用していない言語の2種類の言語はありません。
GrandmasterB 14年

2
@HerrKで回答できる唯一の方法(私の場合も含まれます)は、PHPが悪いと思う理由についての意見です。また、非生産的な議論につながります(それはダメ!いいえ、ダメ!Javaも同じくらいダメ!)。質問は、現在作成されているため、適切な回答に対して最適化されません(これは、適切な回答を作成できないことを意味しません)。余談ですが、議論や意見の質問をするのに適した場所は、Software Engineering Chatです。業界でのphpとその認識について、当社のYannisとチャットすることは特に便利です。

回答:


29

注:これは非常に意見の高いスタンスから書かれています。

参照:PHP:A Fractal of Bad Design

昔、ウェブが若い頃、あなたはperlでウェブアプリを書きました。それは本当にそれでした。それが唯一の選択肢でした(Cで文字列を扱うのが本当に好きでない限り)。(そして、はい、私はASPなどの偉大なスワスを輝かせています...その頃はむしろ忘れたいです。)perlで書かれたWebの素晴らしい大規模なアプリケーションがありました。そして、perlで書かれたがらくたの...たくさんの断片がありました。見れば、まだそれらを見つけることができます-誰かが平手打ちしたバギーなCGIスクリプトで、入力のサニタイズにさえ近づきません。

Webの企業化が進むにつれて、優れた巨大なアプリケーションは、数千の接続を処理するように設計された他のフレームワークに移行しました(当時のperlはそうではありませんでした)。新しい言語を学ぶことができた人々は、Javaに移りました(多くのフレームワークにとって最良の選択でした)。できなかった人は、perlによく似ていて、もっと良いことをしたこの言語がありました(リクエストごとにプロセスをフォークする必要はありませんでした)。phpでした。

Phpは有機的に成長しました...フランケンシュタインのモンスターを有機と呼ぶことができれば。ハックがたくさんあります(関数名の元のハッシュ関数がstrlenであったことをご存知ですか?)。コア言語に追加された部分的なもの(ライブラリーではなく)は、現在も残っています。それはそれほどきれいではありません。(ポケはのredditの時/ R / lolphpあなたはそれが知っていた...これらinconstanciesの多くの楽しみを突きれ-1 monthている、常に 30日?)

そして、巨大で巨大なものがPHPで構築されていますが(例としてワードプレスを見てください)、それはまだ物事がどのように機能するか(または機能しない、または物事のどの部分が最も機能するのか時間)。

それは学ぶのが速くて簡単な言語なので、言語の学習に時間を費やしたくない多くの人々がそれを使用します。そして、それが壊れて、あなたが今それを維持しなければならないとき?まあ、彼らがしていることを常に理解していないコーダーからのそのような規律の欠如を可能にする言語は、いくつかの非常に「興味深い」バグになります。

その言語は、ウェブサイトと半分焼いたワードプレスプラグインを一緒に素早く投げる言語です。16歳の人が20ドルで隣人にコードを書いたり、ビールのお金で大学生にコードを書いたりしました。Stack Overflowのphpタグを少し参照して、いつかそのコードを保守している可能性があることを考慮してください。

他の人のコードは常に下手なことを忘れないでください。また、PHPで他の人のコードを処理する必要がある場合は、それは最悪です。


6
ワードプレスを例にとると、人々がphpを嫌うのも不思議ではありません。symfony.com/components pimple.sensiolabs.org
フェリックス

すべての言語にはバグがあります。PHPにはこれらのバグがたくさんありました。一部はソートされ、一部はそのままですが、代替が作成されます。PHPは時間とともに進化しました。しかし、問題はコミュニティです。初心者やアマチュアでいっぱいのコミュニティがあります。私の先輩はかつて「5年の経験があっても誰もphpを知らない」と言っていました。それは、PHP開発者の半数以上がOOPの概念を知らないのは事実です。stackoverflowからコピーされた配列および文字列関数を使用して作業を完了します。
tejas.jaiswal
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.