私たちは、コードの約90%を共有する2つのサイトを走らせようとしています。ビジネスドメインは同じですが、UIは少し異なります。したがって、彼らは異なるCSSを持つでしょう。さまざまなUIを持つ共有コードベース
コードベースを管理して、それを必要とするコードをどのように共有しますか?
私たちは、コードの約90%を共有する2つのサイトを走らせようとしています。ビジネスドメインは同じですが、UIは少し異なります。したがって、彼らは異なるCSSを持つでしょう。さまざまなUIを持つ共有コードベース
コードベースを管理して、それを必要とするコードをどのように共有しますか?
二つの一般的な方法例えば
、ルータ、依存関係の管理、検証、ドメインエンティティのマッピングなど、すべてのアプリケーションレベルのコードは、管理することができますComposerから依存関係はPackagistになります。コードがオープンソースではない場合、依存関係としてプライベートreposを使用することは可能です。
次に、サイトごとに異なるリポジトリを作成し、Composerを使用して同じパーツを作成し、実際に異なるパーツだけをコーディングします。おそらく、ドメインごとに2つのサーバーがあります。
これは、Composerとコードによるより多くの設定を意味します。
repo 1 /app /viewSpecificToOne /public /cssSpecificToOne /jsSpecificToOne index.php /vendor /[dependencies installed through composer] repo 2 /app /viewSpecificToTwo /public /cssSpecificToTwo /jsSpecificToTwo index.php /vendor /[dependencies installed through composer]
これは、他のソリューションに近いからすべてのサイトを管理していますが、同じドメインマッパーを使用する別のフロントコントローラに異なるルートを送信します検証、ルーターなどがありますが、特定のコードを持つ2つの異なるViewレイヤーがあります。
これは、2つのパブリックreposの各ドメインにサービスを提供するためのサーバーのより多くの構成を意味します。
Repo /app /view1 /viewLogicSpecificToOne /view2 /viewLogicSpecificToTwo /public1 /cssSpecificToOne /jsSpecificToOne index.php /public2 /cssSpecificToTwo /jsSpecificToTwo index.php /lib /sharedPackages
あなたは建築としてあなたの質問にタグを付けました。すべてが同じだがUIはあなたが持っている建築的な質問は何ですか?関連する「共有」コードベースを 'include()'する方法も同様です。これで書かれているのは、現在のところ十分な文脈がない質問です。 – kayess
@ close-votersこれは広範に聞こえるかもしれませんが、実際には具体的に答えることができます。 [ここ](http://meta.stackoverflow.com/a/323828/576767)をチェックしてください。関係するタグは異なりますが、原則は全く同じです。 PHPコードを共有することは、PHPエコシステムに関する特定の問題です。 –