小编off*_*ine的帖子

干净的架构:用例输出端口

我有一个关于 Uncle Bob 的Clean Architecture 中的“用例输出端口”的问题 。

在图像中,鲍勃叔叔将端口描述为接口。我想知道是否要这样或者如果调用的用例交互器还可以返回一个“简单”的价值。在任何一种情况下,应用程序和业务规则层都将定义接口适配器层必须使用的接口。所以我认为对于简单的调用,只返回一个值不会违反架构理念。

真的吗?

此外,我认为演示者实现的这个输出端口接口应该像观察者模式一样工作。演示者只是观察交互者的相关“事件”。在 .NET 事件是一等公民的情况下,我认为使用其中一个是相同的想法。

这些想法是否与 Clean Architecture 背后的想法兼容?

architecture oop design-principles solid-principles

7
推荐指数
1
解决办法
622
查看次数

TDD 与防御性编程

鲍勃叔叔说:

\n\n

“非公开 API 中的防御性编程是不进行 TDD 的团队的一种气味和症状。”

\n\n

我想知道 TDD 如何避免以意想不到的方式使用(内部)函数?我认为 TDD 可以\xc2\xb4t 避免它。它仅表明该函数使用正确,因为调用函数被通过单元测试的 it\xc2\xb4s 覆盖。

\n\n

当使用(非防御性)功能开发新功能时,该功能也是使用 TDD 开发的。因此,无意使用该功能将导致新功能测试失败。

\n\n

因此,使用 TDD 来驱动新功能将迫使您正确使用(内部)功能。

\n\n

你认为这就是鲍勃叔叔\xc2\xb4s 推文的含义吗?

\n

tdd defensive-programming

5
推荐指数
1
解决办法
1163
查看次数