在Clean Architecture中结合使用案例/交互者

时间:2016-04-22 19:30:29

标签: android architecture

我正在开发一款Android应用,其架构基于Uncle's Bob Clean Architecture

到目前为止,我已经实现了很多我的 UseCases / Interactors 没有问题。

我有以下用例:

搜索空间

  • 主要成功案例

    1. 根据给定参数系统搜索房间
    2. 系统加入会议室中的用户
  • 扩展

    1. 找不到房间

      a)系统根据给定参数创建一个新房间

      b)房间中的系统加入用户

我的问题是:我应该创建一个交互器( SearchOrCreateRoomAndJoin ),还是应该创建三个交互器( SearchRoom ,CreateRoom和 JoinRoom 并根据我的用例描述将它们组合起来?

示例:

 Room room = searchRoom.execute(roomOptions)

 if(room != null){

     joinRoom.execute(room)

 }else{

     Room room = createRoom.execute(roomOptions)

     joinRoom.execute(room)
}

可以说,在我的应用程序的某些点上,我执行了一些交互式工具,例如 SearchRoom

1 个答案:

答案 0 :(得分:1)

在我看来,你应该发展三个互动者,以尊重单一责任原则。如果这样做,则会增加代码的可维护性和重用性,因为您可以在其他方案中单独使用这些交互器。