Jump to content

Witaj!

Zaloguj lub Zarejestruj się aby uzyskać pełny dostęp do forum.

Photo
- - - - -

Komunikacja pomiędzy obiektami w SWIFT


  • Please log in to reply
No replies to this topic

#1 OneGhost

OneGhost
  • 296 posts

Posted 18 December 2015 - 08:53

Chciałem się dowiedzieć jaka jest prawidłowa (najlepsza) metoda komunikacji pomiędzy obiektami w konkretnym przypadku. Mam model World, który zawiera tablicę dataSources obiektów WorldDataSource. W każdym WorldDataSource jest tablica var places: [SomeType].

Chciałem się dowiedzieć w jaki sposób powinienem informować World o zmianie places w jednym z dataSources.

 

Wydaje mi się, że mam 3 możliwości, ale jeśli są inne to proszę o podpowiedź.

1) Stworzyć sobie protokół WorldDelegate (zaimplementować go w World) i var delegate: WorldDelegate w każdym WorldDataSource, przypisywać delegate na World i w WorldDataSource.places { didSet {} } wywoływać jakąś metodę na delegate.

2) Dziedziczyć po NSObject i używać addObserverForKeyPath tak jak wcześniej w Obj-C.

3) Używać NSNotificationCenter, ale to mi się wydaje słabym pomysłem.

 

Podobna sytuacja będzie jak będę chciał informować o takich zdarzeniach kontroler, ale akurat teraz chodzi mi o obserwacje Model->Model.

 

Jaka jest najlepsza metoda do tego typu obserwacji?






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users