這邊想問個問題
在PHP使用時
好比說我的decorate有A,B,C
component為 X
之後如下包裝
object = new X();
objecjt = new A(object);
objecjt = new A(object);
objecjt = new A(object);
objecjt = new A(object);
objecjt = new A(object);
objecjt = new A(object);
這樣我就算裝飾時沒做任何事,只有被裝飾後有多委任的功能
可是在測記憶體時卻會愈來愈肥大
Object(A){Object(A){Object(A){Object(A){Object(A){Object(A){Object(X)}}}}}}
這在decorator的設計模式是正常的嗎?
還是是語言的特性關係造成的呢?
我目的是想被裝飾時就多該裝飾的Method,
並不用改寫什麼值
所以像這樣是使用上的例外還是我不該用這設計模式來做我想做的目的