用例和交互器在干净的体系结构中是什么意思?

问题描述 投票:1回答:3

在“干净的体系结构”中什么是用例和交互器。我读到用例包含业务逻辑,但是为什么要用例,如果存在一个表示层,可以在演示者中放置业务逻辑。

android mvp use-case clean-architecture
3个回答
1
投票

用例是系统分析中用于识别,阐明和组织系统需求的方法。用例由特定环境中与特定目标相关的系统和用户之间的一组可能的交互序列组成。它由一组元素(例如,类和接口)组成,这些元素可以以比合并的单独元素之和更大的方式一起使用。用例应包含对用户有意义的所有系统活动。用例可以被认为是与特定目标有关的可能场景的集合,实际上,用例和目标有时被认为是同义词。

一个用例(或用例集)具有以下特征:

  • 组织功能要求
  • 模拟系统/参与者(用户)交互的目标
  • 记录从触发事件到目标的路径(称为场景)
  • 描述事件的主要流程(也称为动作),以及其他可能的事件,称为异常事件流(也称为替代措施)
  • 是多层的,因此一个用例可以使用以下功能另一个。

可以在软件开发的多个阶段中使用用例,例如计划系统需求,验证设计,测试软件以及为在线帮助和用户手册创建大纲。


0
投票

“用例”是一个术语,据我所知,是计算机先驱Ivar Jacobson提出或至少正式化的。这是一个在系统上强调特定视图的概念,即以用户为中心的视图,即他问,用户希望通过系统实现什么?一个用户与一个系统端到端的一次交互是一个用例。

我在这种情况下没有听说过“交互者”一词,但也许正是雅各布森所说的“演员”。这些词足够相似。

假设您想汇款。您打开转账网页,输入金额,选择收款人或输入新的收款人,您提供了一次性密码,然后看到转账正在进行中。这是一个用例。

用例可以有多个方案。在示例中,如果您没有所需的资金怎么办?如果您的受益人信息无法通过验证,该怎么办?如果多次错误输入一次性密码会怎样?如果您尝试在短时间内汇出大量或少量款项会怎样?

此外,用例可以有前提条件,例如您必须已经通过身份验证才能开始使用转帐用例。身份验证将在其他地方指定,并且仅作为前提进行记录,以使事情保持整洁。用例完成后,后置条件也可以指定系统状态。

最后,执行用例的角色可能根本不是一个人,它可能是另一个系统。

最近,我听说过“客户旅程”一词似乎意味着相同或至少相似的概念。

底线:“用例”不是一个特定于系统实现的术语。相反,用例用于从外部查看系统并从用户角度描述其行为。


0
投票

在Clean Architecture中,“用例”和“交互器”的含义相同:它是包含业务逻辑的组件。此体系结构中的演示者不包含任何业务逻辑。演示者的工作是将用例交互器返回的数据结构映射到最方便查看的数据结构。

© www.soinside.com 2019 - 2024. All rights reserved.