0

PHP MVCフレームワーク(この場合はZend)で構築され、サイトのモバイルバージョンとデスクトップバージョンで異なるモジュールを使用しているプロジェクトを継承しました。プロジェクトは初期段階にあり(したがって、機能は約20%完全でバグがあります)、ご想像のとおり、コードが繰り返されています。

共通の要素はありますが、デスクトップサイトとモバイルサイトのレイアウトは異なります。私の本能は、これらを異なるZendモジュールに分離することは最善のアプローチではないことを教えてくれます。コードを1つのモジュールにリファクタリングし、レイアウトの違いを可能な限りビューに限定する必要があると考えています。また、レスポンシブデザインを可能な限り活用し、必要に応じて(クライアントの要件に応じて)個別のビューのみを使用します。概念的には、このアプローチには多くの利点がありますが、Zend(およびモバイルデザインも)に慣れていないため、このリファクタリングを行うと、Zend固有の頭痛の種に遭遇するのではないかと思います(ここでは少しパラノイアです) )?

一般的に「ベストプラクティス」と見なされるものは何ですか(モバイルとデスクトップの共同設計)?Zend MVCに関する具体的なアドバイスはありますか?

4

1 に答える 1

1

モジュールを使用する理由は、2つの異なるモデルを効果的に使用するユーザーセクション/管理セクションなど、懸念の異なる領域にモデルを分離する方法を提供するためです。

モジュールを使用してモバイルバージョンとデスクトップバージョンを分離することは、間違いなく間違った方法であり、どこにでも重複したコードがあります。後でより多くのモバイルフォーマットをサポートする必要がある場合はどうなりますか?同じコードが3、4回以上繰り返される可能性があります。

あなたの本能は正しいです、モデルはモバイルまたはデスクトップで同じままです。コントローラは、それに応じてクライアントに提供するビューを決定する必要があります。

この問題があることは、あなたがあなたの懸念を正しく分離したことの良いテストになるでしょう。わずかな労力で、モデルをまったく変更せずに、追加のビューをドロップできるシステムが完成するはずです。

これは大きなテーマに対するかなり単純な答えですが、お役に立てば幸いです。

于 2012-07-02T08:13:05.407 に答える