web-dev-qa-db-ja.com

Zend OR Symfony?そしてなぜ?

私はこれが以前に何度も行われたことを知っています(いくつかの投稿は本当に古いので、現在のプレイの状態に基づいてフィードバックを得るのはいいでしょう)が、私たちがしようとしている新しいアプリケーションにどのフレームワークを使用するかについて人々のアドバイスをお願いします開発を開始します。ZENDに従ってすべてを設定しましたが、クライアントの投資家は、なぜZendを選択するのかを知る必要があります。

5人の開発者のうち2人がZendに精通していることに基づいて選択されました。今、クライアントは、ZendよりもSymfonyを選択しなかった理由の詳細な説明を求めています。私たちの理由は私たちの選択をサポートするのに十分ではありません;)だから、どのフレームワークが他のフレームワークよりもどのような利点があるかを選択するのを手伝ってください。そうすれば、彼に確かな理由を提示できます(zendの場合)。 )今。これでフレームワークを変更できます。

正しい答えは「あなたがアプリケーションであり、あなた自身の要件/好みに依存している」と思うので、ここにアプリケーションの簡単な説明といくつかの独自の要件を示します:

アプリケーション:

世界中の数千/数百万のPOSで行われたライブトランザクションデータを抽出する金融トランザクションシステム。

プロジェクトにとって重要なことはほとんどありません。

  1. データベースはすでに提供されており、Oracleデータベースです。

  2. Oracleデータベースには86を超えるテーブルがあります。現在、60000行を超えるデータを含むテーブルと79列を含むテーブルがあります。

私たちの要件:

  • jQueryの良いサポート
  • さまざまな種類の出力(HTML、XML、JSON)を簡単に出力できる
  • 一括関数/メソッドを使用した簡単なUI開発。
  • ACL
  • かなり速い開発(いつものように、スケジュールはタイトです)
  • 私たちが好きなようにソリューションを設計する自由を備えた、すてきでクリーンなビジネスロジックレイヤー。
  • 物事を迅速に完了するのに役立つが、あまり制限しないフレームワーク。
  • 他のプロジェクトを行うための優れたプラットフォーム。

これらのフレームワークを使用したことのある人(特に両方を使用した人)からのフィードバックをいただければ幸いです。

Zendは強制ではありませんが、symfonyに変更された場合は、そのサポートが必要です。だから、理由、リンクであなたの答えをサポートしてください。

ありがとうございました。

25
Aakash Sahai

なぜZend

まず第一に、私はZendFrameworkでの作業に関して良い経験をしました。これは、すべてのphp RADフレームワークで最も安定したフレームワークです。Zendは、jQueryの使用を最も簡単にするヘルパーとしてjQuery組み込みクラスを提供します。ただし、最高のフレームワークを提供します。 Dojoでも使用できます。ZendX_jQueryクラスを使用すると、いつでもjQueryを簡単に使用できます。また、ご存知のとおり、jQueryでは$.ajax*()によるajax呼び出しが許可されているため、移動に最適です。クライアント側のスクリプトを介して。

ただし、サイト全体のほとんどの一般的なトランザクションのAPIを作成できるため、私もzendに焦点を当てます。同様に、ZENDはUsing AjaxContext with Zend_Rest_ControllerおよびZend_Rest_RouteAjaxコンテキストを保持するこの目的のためのクラス。

Zendには最高のキャッシュシステムがあります。それでも、luceneを使用した完璧な検索インデックスを提供します。クラスライブラリで独自の再利用可能なコンポーネントを作成するのは簡単で安定しています。 CLIはあなたの構造を楽しいものにするので、すべてを手動で作成する必要はありません。

テンプレートの管理に問題はありません。アクションはビューをプレフィックスでロードします。 Viewは、テンプレートエンジンを使用する必要はありません。しかし、あなたもそれを通り抜けることができます。

レイアウト機能により、ACLに基づくさまざまなコントローラーに基づく汎用的で動的なレイアウトを作成することが非常に完璧になります。そしてACLによって、私もそれを手に入れましたZend_Aclは、ACLサービスの実装に対する完全なソリューションを提供します。もちろん、ACLはアプリケーションで必須のものです。

Zendはまた、サイトのモジュール構造を持つ機能を提供します。プラグインしてコードスニペットを再生するだけです。

Symfonyを使用する理由

私はsymfonyを深く掘り下げました。しかし、私は自分のプロジェクトの1つで以前にそれを経験しました。全体として、比較すると、zendは、symfonyよりも適切なフォルダ構造を持っています。 symfonyはあなたのコードスニペットに機能を提供しますが、それらのスニペットはここではバンドルとして知られています。ビューに実装する必要のあるテンプレートスタイルがいくつかあります。 jQueryを動的に実装するための組み込みコアライブラリは見つかりませんでした。たぶん、私はここで間違っているでしょうが、私はまだそれについて知りません!。

ZendとSymfonyを比較する必要があるときも同じ状況になりました。しかし、すべての側面を検討した後、私はZendを通過することにしました。

11
Hamza Waqas