最近开始看一些有关于design pattern的东西,感觉都不是很直觉会想出的方法
Observer pattern 在讲解的时候,几乎大家都拿订阅报纸当例子
https://dotblogs.com.tw/joysdw12/archive/2013/03/13/96531.aspx
例如这篇网志
但我真的不太懂为什么要用一个什么oberver pattern拿来做这种事情比较好?
直观来说,我们建立一个报社class,里面有个array储存所有的读者
SubscribeNewspaper()
UnsubscribeNewspaper()
SendNewspaper()
都是这个报社class的member function
读者class提供update() function
SubscribeNewspaper()基本上把新的读者加入array
UnsubscribeNewspaper()把读者踢出array
SendNewspaper()依序traverse array中的读者,并且呼叫读者的update()
为什么要拐个弯搞出个接口呢?
还请前辈们指教,是不是我OO观念太薄弱造成的orz