15

私は最近、クライアント用の Drupal アプリケーションを通じて PHP (5) に初めて出会いました。使いこなしてみて特に難しいことはありませんでしたが(たとえば、ドキュメントが充実しているなど)、「これは賢い!」「これは使っていて楽しい!」と思った瞬間はありませんでした。さらに、関数がどのように命名されるかを正確に予測することも、従うべき指針を確認することもできませんでした。

これは、たとえば Ruby とは対照的です。Ruby では、すべてがオブジェクトであり、メソッドは予測可能で疑似ポリモーフィックであり、ブロックは (いくつかの例を挙げると) 使用するのが楽しくなります。対照的な他の言語のハイライト: Python のリスト内包表記は、反復に対する考え方を変えます。C は、ポインターとビット操作を使用してハードウェアに戻ります。javascript は、名前のない関数とハッシュの高度なサポートを備えており、驚くほど優れています。無愛想さは、データに感謝し、関連性を考慮してデータについて考えるように強制します。

それを念頭に置いて、phpのハイライトは何ですか? そして、言語の全体的な設計哲学は何ですか? PHP が全体的にあまり評判がよくないことは承知していますが、多くのプロではない開発者がコードのコピーと貼り付けを行っているため、それは認識の問題であるといつも聞いていました。

編集:

さて、コンセンサスは、PHP は Web プログラマーのモンキー レンチであるということです。私はそれを受け入れることができます。私はただ洞察を探していましたが、私はすでにそれを持っていたと思います. たとえば、mod_php/libphp を高く評価しています。また、php の経験がなくても 2 週間でアプリケーションを完成させることができました。

投稿ありがとうございます。

4

9 に答える 9

20

PHP Web サイトから:

PHP は、HTML が埋め込まれたスクリプト言語です。その構文の多くは、C、Java、および Perl から借用され、いくつかの独自の PHP 固有の機能が組み込まれています。この言語の目標は、Web 開発者が動的に生成されたページをすばやく作成できるようにすることです。

言い換えれば、実際には設計哲学というものはありません。それは、仕事を成し遂げるためのアイデアの組み合わせです (明らかに Perl から継承されています、へへ)。

于 2009-03-12T20:06:28.557 に答える
13

PHP の設計哲学:

ああ!

于 2009-03-12T20:16:24.620 に答える
11

PHP が重視しているのは、巧妙さではなく、仕事を迅速に完了することです。これは、PHP で適切でクリーンなオブジェクト指向コードを作成してはならないということではありません。ほとんどの PHP プログラマーが間違っているのは、HTML に PHP を埋め込むことができるから、そうしなければならないと考えていることだと思います。私自身の PHP コードは強力なオブジェクト指向であり、(最初のページを除いて) 埋め込みコードはまったく含まれていません。

ご指摘のとおり、PHP は非常によく文書化されています。これは、多くの競合他社について言えることではありません。

于 2009-03-12T20:13:07.153 に答える
9

覚えておかなければならないことは、PHP は革命だったということです。Rasmus Lerdorf によって PHP が作成された当時、動的サイトに代わるものは実際にはありませんでした。ページを提供するために独自の C exe を作成する必要がある CGI-GATEWAY (基本的には php) がありました。ウェブ。

その理由、またはその設計哲学は、Web 用の最初のマスマーケット スクリプト言語であったということです。それは少し混乱しているように見える理由ですが、成長したほど設計されていませんでしたが、それは仕事をしています.

于 2009-03-12T20:55:44.837 に答える
2

関数の命名/規則に関しては、その背後にある設計哲学は確かにありません。
矛盾を設計哲学と見なさない限り:)

于 2009-03-12T20:06:46.013 に答える
2

PHP は、Perl 構文を使用した HTML ドキュメント用のサーバー側インクルード システムでした。それ以来、その遺産を追い越そうとしています。

于 2009-03-12T20:46:30.147 に答える
2

私が持っているPHPの本から:

PHP は Apache Software Founation のオープン ソース プロジェクトであり、最も人気のある Apache Web サーバー アドオン モジュールであり、Apache HTTP サーバーの約 53% が PHP 機能を備えています。PHP は、Web およびデータベース環境用の統合ツールを備えているため、Web データベース アプリケーションに特に適しています。特に、HTML ページにスクリプトを埋め込む柔軟性により、HTML プレゼンテーションとコードを簡単に統合できます。データベース層の統合サポートも優れており、15 を超えるライブラリを使用して、ほとんどすべての一般的なデータベース サーバーと対話できます。

次の利点についても説明します。

  • オープンソース
  • HTML との統合に柔軟に対応
  • 複雑なプロジェクトに適しています
  • スクリプトの実行が速い
  • プラットフォームとオペレーティング システムのポータブル
  • コミュニティの取り組み

これがあなたの質問に実際に答えているわけではないことはわかっていますが、PHP が何であるかについて少し高いレベルの概要を提供するかもしれません。

出典: ヒュー E. ウィリアムズ & デビッド レーン。PHP と MySQL を使用した Web データベース アプリケーション。第 2 版。

于 2009-03-12T20:20:39.600 に答える
0

php の良いところは、すぐに立ち上げて実行できることと、初心者にとても優しいことだと思います。私が最初に学んだ言語は学校で Java だったので、PHP はすぐに習得できました。私が Java を学んだとき、最初はオブジェクト指向の概念を理解するのが難しく、完全には理解できませんでした。しかし、PHP で OO を使用する必要がないため、プログラマーでなくても、言語の基本を習得してから、オブジェクトの学習に移ることは非常に簡単です。

この言語が混沌としていることに同意しますが、Facebook、Digg、および Yahoo の一部などのサイトに力を与えています。Twitter を除いて、Ruby (より具体的には rails) について同じことを言うことはできません。

于 2009-03-13T07:49:54.937 に答える