RACSignalのサブクラスであるRACSubjectは、メソッドにsendNext:、sendError:、sendCompletedを持っているので、自分でイベントを送信する機能を持っています。
これらのメソッドを使うと、ReactiveCocoaのFramework Overviewにある通り、非RACなものからシグナルを出すことができるようになります。
今回はそのような利用例として、IIJmioのiOSサンプルアプリでのOAuth認証での事例を紹介します。
RACSignalのサブクラスであるRACSubjectは、メソッドにsendNext:、sendError:、sendCompletedを持っているので、自分でイベントを送信する機能を持っています。
これらのメソッドを使うと、ReactiveCocoaのFramework Overviewにある通り、非RACなものからシグナルを出すことができるようになります。
今回はそのような利用例として、IIJmioのiOSサンプルアプリでのOAuth認証での事例を紹介します。
IIJmioのiOSサンプルアプリケーションにおいて、ReactiveCocoaを用いているネットワークまわりの処理を簡単に紹介します。
ReactiveCocoa 3.0に採用予定のSignalGeneratorは何らかの値からシグナルを生成するためのロジックを抽象化したものです。
本記事では、まず簡単にSignalGeneratorを紹介した後に、実際にSignalGeneratorを利用している例として、ReactiveCocoa 3.0開発版のrepeatとretry:を見ていきます。
RACSequenceとRACStreamは3.0でDeprecateになる予定になっており、
コレクション周りの処理を行いたければ、Underscore.mやRXCollectionsなどのサードパーティライブラリを使ってね、ということになりました (ちなみに、現時点でのReactiveCocoaの安定版は2.0なので、3.0は開発版です)。
これによって、RACSequenceとRACStreamにあったメソッドがRACSignalに移動して、コードも非常にわかりやすくなりました。
今回はその例として、concat:とcatch:のコードを見てみます。
前回の記事「ReactiveCocoaでmap, filterなどを使ってみる」ではmapやfilterを利用してみました。
今回は、前回の処理を別の方法で書くことを通して、ReactiveCocoaの中心的な役割を果たしているRACSignalについて説明します。