代码之家  ›  专栏  ›  技术社区  ›  Hemanshu Bhojak

在软件中封装用例

  •  3
  • Hemanshu Bhojak  · 技术社区  · 15 年前

    我通常为我开发的所有软件编写用例。对于每个用例,我通常编写一个控制器来指导流程(实现一个用例)。

    我最近开始使用ASP.NET MVC开发Web应用程序。ASP.NET MVC的最佳实践之一是在控制器中保持非常少的逻辑。我不知道我将如何改变我的设计来反映这一点。

    我基本上想要一种方法来封装我的用例。

    3 回复  |  直到 13 年前
        1
  •  1
  •   Anurag    15 年前

    我认为拥有一个胖的模型和瘦的控制器在任何语言中都是一个很好的实践,尤其是.NET MVC。把这个收好 article 这经历了一个示例场景,展示了RubyonRails中胖模式的优点(但是这些想法适用于任何语言)。

    为了在代码中表示用例,我认为在测试用例中比在控制器中更好。

        2
  •  1
  •   Dave Sims    15 年前

    将尽可能多的业务逻辑推送到模型和帮助器类中,并使用控制器主要用于处理URL调用和实例化相关模型、从中检索数据以及将数据推送到视图中。视图和控制器应该尽可能少地做出决定。

        3
  •  1
  •   Hemanshu Bhojak    13 年前

    创建一个业务组件来封装用例。例如,如果您有一个休假管理系统,您将拥有诸如申请休假、批准休假请求、拒绝休假请求等用例。为此,您可以使用诸如“应用”、“批准”、“拒绝”等方法(功能/操作)创建名为“休假管理器”的业务组件(类)。这些方法将封装您的用例。。这些方法将您的业务实体和数据存储类作为输入并执行用例。

    class LeaveManager{
         int Apply(from, to);
    
         bool Approve(leaveApplicationId, approverId);
    
         bool Reject(leaveApplicationId, approverId);
    }
    

    然后,通过提供所需的参数,可以在控制器中使用此业务组件来执行用例。