如何在策略和環境中共享數據
作者:佚名 時間:2012-06-08 分享到:
策略模式的一個真正優勢是由于環境對象和策略對象的代碼位于兩個不同的類中,因此它們之間有一道墻將數據劃分開.而壞消息是我們需要找一個方法使策略所需要的環境中具備的數據穿過這道墻.實際上,我們在此有兩個選擇.
第一種方法是,可以繼續使用我們一直用的方法,當環境對象調用策略對象的方法時,將策略對象需要的甩有東西以參數的形式傳入,回想在我們的report救命中,報告對象將格式化對象所需要的所有東西通過參數傳入output_report方法,這種方法有一個好處,是使策略對象和環境對象相互間區分得很清楚,策略對象具備接口,而環境對象只是簡單地調用接口,這個方法的弱點是可能會有大量數據需要在環境對象和策略對象之間傳遞,因此,當你傳遞大量的數據時,你無法保證這些數據會被使用到.
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/help/20151126/n953.html