Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
GameState *gameState = [[GameState alloc] init];
[gameState addObserver:levelManager];
[gameState addObserver:levelViewController];
@interface GameState : NSObject {
…
NSMutableSet *observerCollection;
}
Тут пахнет кривизной либо кода, либо Objective C.
В Java и Java кастартах типа AS3 такие проблемы решаются классом Event.
GameState *gameState = [[GameState alloc] init];java.util есть класс Observable и интерфейс Observer. Они реализуют паттерн напрямую.[ self.observers gameState: self didUpdateScore: self.score ];
Паттерны проектирования для iOS разработчиков. Observer, часть I