【问题标题】:Layered Architecture and Static Methods分层架构和静态方法
【发布时间】:2010-05-14 19:45:34
【问题描述】:

我需要关于我计划实施的三层架构的建议。

场景

我在 ASP.NET c# 3.5 环境中工作。

DLHelper:从数据库中获取数据的方法。

DAL :包含在 DLHelper 类的帮助下从数据库收集数据的方法。该层中的大多数方法都没有引用任何页面级对象,因此可以声明为静态。

BL : 与 DAL 层相同,大多数方法不引用任何页面其他页面级对象,因此可以声明为静态。

UI 层:根据上述场景,UI 层调用 BL 层就像

BLClass.Method -> DALClass.Method

问题 我想知道这是标准化的方法。根据与我同事的讨论,我们应该有相应的 BL/DAL 层对象。但我仍在寻找更有说服力的答案。

【问题讨论】:

标签: .net layered


【解决方案1】:

我一直在寻找相同的答案。那就是“如果有应用程序设计的标准方法/最佳实践”。我的问题与 BL 上的静态方法有关。不过我想我不能给你一个直接的答案。

我可以告诉你,在我的例子中,我继续前进并将某些类中的方法设为静态。我这样做是因为不需要实例(因为它们在 OOP 文献中被严格定义)。也就是说,不需要创建具有自己状态的对象。

“根据与我的同事的讨论,我们应该有每一层的对象”。如果您的意思是只有一个对象,那么我敦促您重新考虑。在大多数情况下,有不止一个“协作”来交付结果(当然有例外)。

“责任驱动设计”在很多情况下对我都有帮助。

【讨论】:

  • 不是整个层作为一个对象,而是实体的对应层对象。
猜你喜欢
  • 1970-01-01
  • 2011-08-02
  • 1970-01-01
  • 1970-01-01
  • 2011-02-07
  • 2012-11-02
  • 2016-01-26
  • 1970-01-01
  • 2011-05-11
相关资源
最近更新 更多