7

私の職場のチームは、Web サイトとアプリケーションを開発するためのフレームワークの使用を検討しています。一部の高齢者は、Zend フレームワークを使用する必要があると確信しています。機能を選択して選択する方が簡単で、フレームワークが軽量になるからです。

残念ながら、彼らは軽量フレームワークが持つ技術的な利点しか見ていません。私の意見では、フルスタック フレームワークを使用する方が良いと考えています (私は Symfony の支持者です)。

  1. また、新しいドキュメントを作成せずに標準的な作業方法を提供してくれます。
  2. 新しい機能を使用したい場合は、ドキュメントを読んで使用方法を確認するだけでよく、最初に Zend のセットアップに組み込む必要はありません。

私のすべての質問にすべての人が答えてくれるとは思っていませんが、これが私が答えで探しているものです。

  • ここでポイントがありますか?
  • 同様の状況に陥ったことがありますか?どのように対処しましたか?
  • 私が使用できる、または私自身の意見を再考させることができる、より多くの議論はありますか?

背景: 私は約 10 人のプログラマーがいる小さなショップで働いています。私たちは主にPHPをプログラミングしています。私たちは、社内で開発された非常にシンプルなフレームワークと ORM ライブラリを使用していますが、これらは実質的に文書化されておらず、最も基本的な機能 (バリデーター、トランザクション、キャッシュ、認証なし) しかありません。

4

6 に答える 6

14

そして、なぜ両方ではないのですか?私は 2006 年から symfony を使用しており、Doctrine の真のファンで 1 年間、そして数か月間、Zend コンポーネントを symfony アプリケーションに直接統合することで、生産性のはしごで多くのステップに到達しました。

symfony の真の強みは、すべてのデカップリングと、フレームワークの容易な拡張性にあります。全体のほぼすべてのレイヤーを置き換えることができます。Zend ディレクトリをコピーして /lib/ に貼り付け、このシングルトンを /config/ProjectConfiguration.class.php に追加します。

    static public function registerZend()
{
    if (self::$zendLoaded)
    {
        return;
    }

    sfToolkit::addIncludePath(sfConfig::get('sf_lib_dir') . '/vendor', 'back');
    require_once(sfConfig::get('sf_lib_dir') . '/vendor/Zend/Loader.php');

    Zend_Loader::registerAutoload();
    self::$zendLoaded = true;
}

そして、好きな Zend コンポーネントを自由に使用してください。新しい Jobeet チュートリアル、特に Zend_Lucene_Search を使用する検索部分に興味があるかもしれません。

于 2009-01-02T12:35:19.683 に答える
1

ZFはどのように「フルスタック」ではありませんか?symfonyが行うすべての要素と、いくつかの要素が含まれているようです。さらに、ZFには「毒を拾う」アプローチがあり、さまざまな方法でさまざまなピースを使用できます。(例として、Zend_Configをさまざまな場所で使用しているため、小さなコードでも、誰もが適度に統一された構成システムを期待できます)。

于 2008-12-26T14:31:08.980 に答える
1

Symfony は非常に使いやすく、セッション、キャッシング、ユニットと機能のテスト、自動展開などを備えた完全に機能するサイトを非常に短い時間で稼働させることができます。データにアクセスして表示するためのコードだけを気にする必要があります。自分で実装するほど軽量ではないかもしれませんが、維持する必要があるコードの量は少なくなります。

Propel/Creole ORM はうまく機能し、バリデーターなどが組み込まれており、箱から出してすぐに拡張できるように設定されています。

社内フレームワークを Symfony に移行するとき、Symfony が起動時にスキャンする lib ディレクトリの 1 つにライブラリ コードを配置するだけで、多くのライブラリ コードを再利用できました。

私は使っていませんが、Symfony には Zend ブリッジが組み込まれており、必要に応じて Zend モジュールを使用できます。

それが役立つことを願っています。

于 2008-12-25T18:09:31.273 に答える
1

残念ながら、彼らは軽量フレームワークが持つ技術的な利点しか見ていません。私の意見では、フルスタック フレームワークを使用する方がよいと考えています (私は Symfony の支持者です)。理由は ...

構築しているアプリケーションのタイプに大きく依存します。複雑さの少ない、ほとんどがコンテンツ駆動型のアプリケーションを多数構築している場合は、Symfony が最適です。一方、アプリケーションが Symfony のネイキッド オブジェクト パラダイムに適合しない場合 (たとえば、アプリケーションが複雑で、コンテンツ管理に完全に焦点を当てていない場合)、助けというよりはハードルのように感じるかもしれません。

于 2008-12-27T16:40:38.550 に答える
1

ZF のドキュメントとコミュニティへの参加の方が優れていると思います。また、命名方式、コーディング標準、および拡張性も気に入っています。また、ZF は、独自のペット プロジェクトに取り組んでいるさまざまな人々から、オープン ソース プロジェクトのような既存のクラスに対して多くの新機能と改善を得ているようです。

Symfony が 10 人のプログラマーのグループにとってどのように有利なのか、私にはよくわかりません。明らかに、新しいプロジェクトのデフォルト構成を比較的迅速にセットアップでき、ZF の上に、または ZF に加えて多くの拡張性を構築できるはずです。

于 2008-12-25T20:01:34.060 に答える
0

私はどちらの経験も限られていますが、Zend の「標準」を設定するための良い出発点は、さまざまなモジュールを使用するためのチュートリアルに従うことです。それらの多くは、そこにあるプロジェクトの 99% で機能する適切なデフォルトを提供します。

それは、あなたが何のためにそれを必要とするかということになると思います.Zendは柔軟性を、Symfonyは迅速な開始を、プロジェクトに特別なニーズがない場合は事前に開発された標準を使用します.

于 2008-12-25T19:30:58.147 に答える