данных • реакция на events Функциональный подход: • набор функций • отсутствие состояний и мутабельности • зависимость только от входных данных FRP = (Reactive + Functional) Programming;
*letters = [@"A B C D E F G H I" componentsSeparatedByString:@" "].rac_sequence; // Contains: AA BB CC DD EE FF GG HH II RACSequence *mapped = [letters map:^(NSString *value) { return [value stringByAppendingString:value]; }];
Completed, Error 3. One or more Subscribers 4. Operations: Subscribing, Side-effects, Transformation, Combining, Control 5. Signals are cold // RACObserve(self, username) creates a new RACSignal [RACObserve(self, username) subscribeNext:^(NSString *newName) { NSLog(@"%@", newName); }];