gpt4 book ai didi

architecture - 构建大型 Liferay portlet 项目

转载 作者:行者123 更新时间:2023-12-04 06:26:40 24 4
gpt4 key购买 nike

我们正在使用 Liferay 开始一项大型 portlet 开发工作,我发现很难根据我们正在创建的各种 portlet 来构建这个项目。我们不确定应该以哪种方式构建我们的项目。我们有分布在世界各地的开发团队,我们使用 git 作为我们的版本库。我们使用 Spring Portlet MVC 来开发 portlet 并使用 service builder 来构建服务层。

我可以考虑这三种方法。

  • 为每个 portlet 创建一个新的 portlet 项目
  • 将每个 portlet 保存在单独的 portlet 项目中可以轻松快速地进行开发,因为我可以让开发人员独立处理它们。
  • 在 portlet 使用公共(public)代码的情况下,这可能会变得很痛苦。因此,在不同的 Portlet 中可能会出现大量相同类型的代码。
  • 这可能会失控,因为我们将有许多 war 文件,每个文件都会增加我们的运行时成本。
  • 在逻辑上将 portlet 分成多个 portlet 项目
  • 这将减少 portlet 项目的数量,并且可以重用大量代码。
  • 一些控制可以放在这样的结构中。
  • 只创建一个包含所有 portlet 的 portlet 项目
  • 对于分布式开发团队来说,这将是最复杂的管理。
  • 大多数通用代码都可以重用。
  • 在这种情况下,执行一致性会更容易。
  • 1 和 2 的混合(基于我在下面的评论中与 Dirk 的讨论)
    我猜这种方法需要混合使用 1 和 2。
  • 我想为每个开发人员提供一个独立的 portlet 开发环境以及一些关于通用组件的指南。
  • 这样他们就可以更好地控制他们的 portlet 代码,并且只关注 portlet 特定的代码。
  • 同时,公共(public)代码可能需要更多控制,因为多人可能会修改它。

  • 如果您已经创建了 liferay 项目/portlet,我想知道您的专家意见以及您选择的方法。牢记这些事情
  • 当各种开发人员正在开发多个 portlet 时,您如何控制 portlet 开发。
  • 上述任何方法的优点/缺点是什么。
  • 如果上述方法都不好,请提及您能想到的最佳方法。

  • 谢谢阅读

    最佳答案

    在 Dirk 的回答中添加一些内容,我的经验法则是在同一个项目中拥有具有类似维护周期的 portlet - 例如如果您更新其中一个,您通常会更新所有这些,因为它们构成一个应用程序,通过不同的 UI 呈现相同的数据。这基本上是您的选择2。

    除此之外,您选择的选项非常好 - 答案是“在中间”。平衡分离与应用程序服务器开销。使用上面的经验法则,你就设置好了。

    关于开发环境:每个开发人员都应该在自己的环境中工作,但是,通过版本控制,他们当然可以在相同的项目上工作。

    关于architecture - 构建大型 Liferay portlet 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5965930/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com