-
11. Data: 2011-03-31 06:57:36
Temat: Re: lame, pytanie z obiektowki wlasnie
Od: Paweł Kierski <n...@p...net>
W dniu 2011-03-30 23:33, Wiktor Zychla pisze:
>> problem jest taki ze okienko A powinno byc poinformowane
>> kiedy B jest zamykane - jak zrobic najlepiej taka komunikacje
>> wziawszy np pod uwage to ze B ogolnie moze byc
>> wywolywane nie tylko z A ale i np z obiektow innych
>> typow
>
> to czego szukasz to wzorzec Observer, a ściślej - taka implementacja
> wzorca MVC, w której używa się observee/observer do wzajemnego
> powiadamiania się aktywnych widoków. Alternatywą dla Observer może być
> wzorzec Event Aggregator. implementację obu w dowolnym języku łatwo
> znaleźć.
To jeszcze żeby uzupełnić - sygnały i sloty, czy .NETowe delegaty
i zdarzenia to pewne specyficzne implementacje Obserwatora. Głównie
dodające lukier składniowy, dzięki czemu nie trzeba explicite
definiować interfejsu obserwatora.
Podobną funkcjonalność można też uzyskać za pomocą boost::function -
jeśli nie będzie potrzeby informowania więcej niż jednego obserwującego.
--
Paweł Kierski
n...@p...net