[英]Object pattern to collect the data while executing a business function
我有一個執行業務功能的類,入口點方法調用了多種方法。
public class Tool
{
public void runTool()
{
methodA();
methodB();
methodC();
printToolSummary();
}
}
這些方法中的每個method*
被稱為執行特定的子功能,我想將這些方法中每個方法的感興趣結果/屬性收集到一個摘要對象中。 這些method*
不是要返回的單個值。
我當時在想一個包含所有感興趣屬性的對象,將該對象傳遞給每個方法並讓該方法設置屬性,但是以某種方式使用可變對象聽起來並不正確,因為無法防止methodA從不應該更新屬性,還是我擔心太多?
如果您擔心方法不應該接觸對象的某些部分,那么您傳遞給方法的對象應實現多個接口,每個接口僅公開您希望作用方法接觸的屬性。
所以methodA可以期望一個類型為A的類,而methodB可以期望一個類型為B的類,其中A和B是接口...
否則,您的方法實際上並沒有什么錯,這很普遍。
如何使用包含每個方法的子類的復雜對象。 例如:
public class ResultA { // some attributes for Method A }
public class ResultB { // some attributes for Method B }
public class ResultC { // some attributes for Method C }
public class Result {
private ResultA resultA;
private ResultB resultB;
private ResultC resultC;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.