Liferay を使用して大規模なポートレット開発作業を開始していますが、作成中のさまざまなポートレットに関してこのプロジェクトを構築するのは難しいと感じています。プロジェクトをどのように構成すればよいかわかりません。開発チームは世界中に分散しており、バージョン リポジトリとして git を使用しています。ポートレットの開発には Spring Portlet MVC を使用し、サービス レイヤーにはサービス ビルダーを使用しています。
この3つのアプローチについて考えることができます。
ポートレットごとに新しいポートレット プロジェクトを作成する
- 各ポートレットを個別のポートレット プロジェクトに保持すると、開発者が個別に作業できるため、開発が簡単かつ迅速になります。
- これは、ポートレットが共通のコードを使用する場合に問題になる可能性があります。そのため、異なるポートレットで同じタイプのコードが大量に増殖する可能性があります。
- 多くのwarファイルがあり、それぞれがランタイムコストに追加されるため、これは制御不能になる可能性があります.
ポートレットをいくつかのポートレット プロジェクトに論理的に分割する
- これにより、ポートレット プロジェクトの数が減り、多くのコードを再利用できます。
- このような構造には、一部のコントロールを配置できます。
すべてのポートレットでポートレット プロジェクトを 1 つだけ作成する
- これは、分散した開発者チームにとって管理が最も複雑になります。
- 一般的なコードのほとんどは再利用できます。
- これにより、一貫性の強化が容易になります。
1 と 2 の混合 (以下のコメントでの Dirk との議論に基づく) このアプローチは、1 と 2 の混合である必要があると思います。
- 各開発者に、共通コンポーネントに関するいくつかのガイドラインとともに、独立したポートレット開発環境を提供したいと考えています。
- このようにして、ポートレット コードをより詳細に制御し、ポートレット固有のコードのみに集中できます。
- 同時に、共通コードは複数の人が変更する可能性があるため、より多くの制御が必要になる場合があります。
すでに liferay プロジェクト/ポートレットを作成している場合、またどのようなアプローチを選択したかについて、専門家の意見をお聞かせください。これらのことを念頭に置いて
- さまざまな開発者によって複数のポートレットが開発されている場合、ポートレットの開発をどのように制御しますか。
- 上記のアプローチの長所/短所は何ですか。
- 上記のアプローチのいずれも適切でない場合は、考えられる最善のアプローチについて言及してください。
読んでくれてありがとう