ホームページ >バックエンド開発 >PHPの問題 >PHP開発のメリットとデメリットは何ですか

PHP開発のメリットとデメリットは何ですか

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼オリジナル
2019-09-24 16:51:124459ブラウズ

PHP開発のメリットとデメリットは何ですか

1. 利点

(1) Windows ではなく Linux/Unix と組み合わせた、クロスプラットフォームで優れたパフォーマンス。パフォーマンスが 45% 向上し、LAMP (Linux /Apache/Mysql/PHP) や FAMP (FreeBSD/Apache/Mysql/PHP) などの多くの無料プラットフォームと組み合わせると、非常にコスト効率が高くなります。十分な規模がある場合は、PostgreSQL または N 種類のデータベースをサポートする Oracle への切り替えを検討できます。 (N >= 10)

(2) 構文は単純で、C と Perl を学習していれば簡単に始めることができ、部分的に ASP に似ています。 NuPHPed や Zend Studio などの成熟した開発ツールがあり、Linux プラットフォームでは Eclipse などを使用できます。

(3) 現在、WebService、Ajax、XML などの主流の技術がサポートされており、アプリケーションとしては十分です。

(4) データベース抽象化層として ADODB や PEAR::DB を使用したり、テンプレート層として Smarty やスマート テンプレートを使用したりするなど、比較的完全なサポートがあり、PHP 5.1 であれば、 PDO (PHP データ オブジェクト) を使用してデータベースにアクセスします。

関連する推奨事項: "php チュートリアル"

(5) MVC をサポートするフレームワーク: phpMVC など、成熟したフレームワークが多数あります。 ASP.net Frameworks: Prado、Ruby On Rails: Cake などの迅速な開発をサポートするフレームワークは、アプリケーションのニーズを満たすのに十分です。

(6) PHP5 はすでに成熟したオブジェクト指向システムを備えており、基本的なオブジェクト指向要件に適応できます。大規模プロジェクトの開発に適しています。

(7) PHP の開発をサポートする成熟したコミュニティがあります。

(8) 現在、タオバオ、ヤフー、163、新浪、その他の大規模ポータルなど、多くの大規模アプリケーションで PHP が使用されており、その多くが開発言語として PHP を使用しているため、大規模ポータルは PHP を選択できます。用途には十分だと思います。

(9) 使用できるオープン ソース フレームワークやオープン ソース システムは数多くあります。たとえば、よく知られたオープン ソース フレームワークには、Zend Framework、CakePHP、CodeIgniter、symfony などがあります。フォーラムには、Discuz!、Phpwind など、オープンソース ブログ WordPress 、Ecshop、ShopEx などのオープンソース オンライン ストア システム、UCHome、ThinkSNS などのオープンソース SNS システムが含まれます。

(10) 使用コストが低い (linux apache mysql php kernel)

2. 欠点

(1) 関数の名前が標準化されていないため、キャメルケース方式と下段では、パラメータの送信位置が異なります。

(2) シングルスレッド; PHP 自体、PHP の pthreads 拡張機能は以前から利用可能でしたが、PHP は常にシングルプロセス プログラムでした。しかし、十分に安定しておらず、実行中に原因不明のハングアップが発生します。PHP 拡張機能はすべて C で書かれており、拡張機能にスレッド競合リソース制御の問題がある場合、全体がハングアップすることを意味します。

(3) コアの非同期ネットワークはサポートされていません (もちろん、Linux には同期ノンブロッキング ネットワーク モデルのみがあります)。しかし、これが欠けていると、大規模な同時実行に耐えられるネットワーク アプリケーションを開発することが困難になります。従来のネットワーク モデルと IO は両方ともブロックされています。基本的なプログラミングのアプローチは、プロセス (またはスレッド) がユーザーの接続要求に応答するというものです。したがって、何千ものネットワーク接続を必要とするリアルタイム オンライン ゲームのようなタスクを完了することは不可能です。 PHP には、これをある程度補うことができる Libevent および eio 拡張機能もありますが、それほど完璧ではないように感じられます。

(4) Web 開発のみをサポートしています。.exe ファイル、デスクトップ アプリケーション、またはモバイル アプリケーションの作成には不便です。

(5) クローラー、自動実行スクリプト、科学計算プロジェクトには適していません。実現する方法はたくさんありますが、この言語の基本構造は適していません。

(6) その後のメンテナンスが困難。後期のスピードアップ余地はかなり限られている。

(7) PHPの解釈と動作の仕組み。この操作メカニズムにより、各 PHP ページが解釈および実行された後に、関連するすべてのリソースをリサイクルできます。言い換えれば、PHP には言語レベルでオブジェクトをメモリに常駐させる方法がありません。 PHP では、すべての変数はページ レベルであり、グローバル変数であっても、クラスの静的メンバーであっても、ページの実行後にクリアされます。

JSP を例に挙げると、JSP では、Java Bean のスコープには、ページ、アプリケーション、セッション、リクエストの 4 つの有効な値があり、それぞれページ、プログラム、セッション、リクエストの 4 つのライフタイムに対応します。 。しかし、PHP では、Page の存続期間は 1 つだけです。

以上がPHP開発のメリットとデメリットは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

関連記事

続きを見る