【发布时间】:2018-12-04 17:59:19
【问题描述】:
想象这样一个案例:
我有一个控制器操作(或服务方法),我需要按连续顺序调用三个方法,每个方法都有一个职责。
public return_type MyMethod(_params_) {
// .. some code
Method_1 (...);
Method_2 (...);
Method_3 (...);
// ... some more code
}
开发人员可能会犯在 Method_1 之前调用 Method_2 的错误,或者至少我们可以说没有任何事情迫使他遵循这个顺序,或者在不遵循这个顺序时得到一个异常。
现在我们可以在 Method_1 中调用 Method_2,在 Method_2 中调用 Method_3,但是当每个方法处理完全不同的职责时,这似乎并不正确。
这种情况有设计模式吗?或者任何“干净”的方式来处理这个?
【问题讨论】:
-
这些方法有什么作用?如果呼叫者以错误的顺序呼叫他们会发生什么?
-
您可以编写测试以确保正确的顺序并避免错误。如果命名正确,它们也会揭示意图。
标签: c# .net design-patterns architecture