私は興味があります、PHPでフレームワークを使用することの利点(および欠点)は何ですか?
バージョン3以降、PHPのオンとオフを使用しています。PHPで使用できるフレームワークを使用したことがないので、何を見逃しているのでしょうか。
フレームワークは、低レベルの詳細からユーザーを抽象化し、生産性を高め、低レベルのエラー(SQLインジェクション攻撃の防止など)からユーザーを保護します。
優れたPHPフレームワークでは、懸念事項を分離し、実績のあるアーキテクチャを実装する必要があります。これにより、最終的に設計が改善され、コードの読み取りと保守、および単体テストがはるかに簡単になります。
ここに いくつか 参照 なぜあなたがすべきかについて フレームワークを使用する
(私は Symfony 開発者なので、 Symfony を中心に答えます。同様の機能を持つ他のフレームワークがありますが、私の意見では、まったく同じものはありません。包括的またはよく書かれている Symfony )。
Symfony Webサイトからの引用:
frameworkは、特定の目的で使用されるパターンの多くを自動化することにより、アプリケーション開発を合理化します。フレームワークもコードに構造を追加、開発者に書くように促しますより良く、より読みやすく、より保守しやすいコード。最終的に、フレームワークはプログラミングを容易にします複雑な操作を単純なステートメントにパッケージ化するためです。
Symfonyは、いくつかの重要な機能によってWebアプリケーションの開発を最適化するように設計された完全なフレームワークです。手始めに、それはWebアプリケーションのビジネスルール、サーバーロジック、およびプレゼンテーションビューを分離します。 多数のツールとクラスが含まれています複雑なWebアプリケーションの開発時間を短縮することを目的としています。さらに、それは一般的なタスクを自動化するので、開発者はアプリケーションの詳細に完全に集中できます。これらの利点の最終結果は、新しいWebアプリケーションが構築されるたびに車輪の再発明を行う必要がないことを意味します。
Symfonyは完全にPHP 5で書かれています。これは徹底的にテストされたさまざまな実世界のプロジェクトでテストされており、実際に高レベルで使用されています。 -デマンドe-ビジネスWebサイト。MySQL、PostgreSQL、Oracle、Microsoft SQL Serverなど、利用可能なほとんどのデータベースエンジンと互換性があります。* nixおよびWindowsプラットフォームで実行されます。まずその機能を詳しく見ていきましょう。
Webプロジェクトの一般的な機能のほとんどは、次のようにsymfony内で自動化されています。
車輪の再発明をしないでください
それがすべてです。フレームワークには、長年の経験を通じて認められたベストプラクティスを使用して実装されたすべての主要な機能があります。
PHP :)の代わりにC++を使用できるからかもしれません。
フレームワークは、定義された構造と実装を使用して、より短い時間で品質、セキュリティなどの点でより良い目標を達成するために使用されます。
すでに作成されたフレームワークを使用していない場合は、独自のフレームワークを作成していますが、それでもフレームワークを作成しています。
フレームワークは、Webサービスと管理サイトの開発をスピードアップするように設計されていると思います。私はbackvendor Yii拡張機能を使用しており、最初の段階で時間を節約するのに本当に役立ちます。
1つの開発のスピード。また、手動でコーディングすることに伴う多くの負担を取り除きます(もちろん、車輪の再発明をしないことを意味します)。
優れたフレームワークは、アーキテクチャのベストプラクティスをガイドし、実証済みの安定した方法で、頻繁に必要とされる機能を提供します。したがって、常に車輪の再発明を行う必要はありません。