【问题标题】:When to use a Visual Studio Project for a Layer in a Layered Architecture? What are the benefits for physical seperation?何时将 Visual Studio 项目用于分层架构中的层?物理分离有什么好处?
【发布时间】:2014-10-16 12:43:00
【问题描述】:

今天我和我的同事讨论了一个软件架构主题。我们不知道为什么大多数分层软件架构的示例都使用单独的 Visual Studio 项目?将层逻辑分离到 Visual Studio 项目中的缺点是什么?我们的团队由 4 到 6 名软件开发人员组成。

【问题讨论】:

  • 请将您的问题限制/编辑到更高的堆栈溢出标准..
  • 有趣的问题。我也对这类架构设计问题感兴趣。我更喜欢物理分离,但我无法解释原因。

标签: architecture n-layer


【解决方案1】:

当我开始一个新项目时,我也在问自己同样的问题......

在我看来:

Visual Studio 项目中的分离有以下好处:

  • 您不需要重新编译未更改的项目。在大型项目中,这可能会缩短编译时间。
  • 您可以通过在不同的项目中包含以前编译的 DLL 来重用多个组件。例如。类似于框架 DLL 或您在每个项目中开发的某些核心组件。
  • 考虑大型项目:多个团队处理多个项目:如果所有人都只使用一个项目,那么当您只处理一个项目时,您将面临大量合并冲突

【讨论】:

  • 我同意你的前两个论点。关于您的第三个论点:您也可以使用相应的项目文件夹实现关注点分离。因此,您可以避免合并冲突。这不适合大型团队,但可能适合较小的团队。为层使用单独的项目/DLL 的另一个优点是可扩展性。您可以在不同的机器上安装 DLL 并按需扩展。
【解决方案2】:

我今天在 Pluralsight 上观看了 Steve Smith 的视频 'Creating N-Tier Application in C#'。这个视频帮助我找到了适合我的答案。当您在逻辑上将应用程序分成多个层但在物理上将它们组合成一个程序集时,主要优势是简单的部署和性能。

您获得了性能,因为您没有机器和流程的界限。部署很简单,因为您可以部署构建的单个工件。

将体系结构物理分离为层是应用程序可以以不同方式部署之前的第一步。此外,您可以通过物理分离应用面向服务的架构。

【讨论】:

    猜你喜欢
    • 2010-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-19
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    • 1970-01-01
    相关资源
    最近更新 更多