【问题标题】:Web application / program design architecture [closed]Web 应用程序/程序设计架构 [关闭]
【发布时间】:2011-09-30 06:01:35
【问题描述】:

我们计划升级我们的网站并使用 N-TIER 设计。我读过了 this article 我认为这非常好。
我的问题是:
1) 这种架构对于设计应用程序仍然有效吗?
2) 我们应该使用其他架构,如洋葱、3 层、ddd 等吗?
3)在服务层中,文章建议我们将数据消息和命令分开,最好的实现是创建两个服务,一个用于数据,一个用于命令?
谢谢

【问题讨论】:

  • 您真的不能指望我们阅读 150 页来回答您的问题。也许改写你的问题,指向你想要建议的特定架构领域,而不是“这仍然有效”。许多架构(尤其是 DDD)是优先考虑的,因此将是一个主观的答案。
  • 不是一个真正的问题。请关闭
  • @ RPM1984 - 我不希望任何人阅读 150 页的文章(除非他愿意)来回答我的问题,如果他知道它或建议的架构并且对此事有煽动会好的。有时问题的方式比问题本身更重要。谢谢你对DDD的回答,我会调查的。

标签: c# web-applications architecture


【解决方案1】:

这真的取决于应用程序的要求。

我更喜欢 4 层设计:

  1. 数据访问
  2. 实体
  3. 外墙
  4. 用户界面

不过,我曾与喜欢使用纯业务对象的开发人员合作过。也就是说,对象本身并不是数据存储中记录的真正表示,它们本身包含执行它们需要执行的操作所需的所有功能。这包括数据访问。这方面的一个例子是CSLA.NET

我确实觉得这个讨论是一个基于经验的无底洞观点:)

【讨论】:

  • 在我看来,这个讨论是计算机科学的精髓,我喜欢它们:)。谢谢
【解决方案2】:
  1. 是的,这篇文章还是不错的文章
  2. 这真的取决于 您的技术和功能 要求。你不能开始 架构并假设 实施将适合任何 应用。
  3. 见 2

【讨论】:

    【解决方案3】:

    架构取决于您需要创建什么样的项目、项目和业务逻辑的复杂性、可扩展性、可维护性、您应该以任何可以轻松更改代码的方式来实现项目以及层和类应该更多 解耦你应该使用 ASP.NET MVC 作为应用层,我建议使用 IoC-contaners 进行依赖注入,你可以从 3 层架构开始 Repositories 数据访问层、Services 类业务逻辑层、ASP.NET MVC 应用层 还有另一件事你应该使用 ORM,比如 Nhibernate 或 Entity Framework 如果您有一个复杂的域,您应该查看 DDD

    【讨论】:

    • 如果可以请解释一下,“复杂域”是什么意思 - ?
    • 我的意思是,如果您有复杂的业务逻辑和大域,请查看 DDD。你的项目是商业应用吗?
    • 是的,它完全是 b2b 门户。
    • 如果没有太多经验3层经典架构更适合你
    猜你喜欢
    • 1970-01-01
    • 2015-12-03
    • 2013-12-08
    • 2021-06-02
    • 2010-10-06
    • 2011-10-23
    • 2017-08-11
    • 2013-12-29
    • 1970-01-01
    相关资源
    最近更新 更多