ひとしれずひっそり

主にソフトに関することをメモしていきます。過程をそのまま書いていたりするので間違いが含まれます。鵜呑みしない様に。

Combine (2)

ここを読んでいる。

developer.apple.com

Publisher

  • Publisherはprotocolである。
  • upstream publisherから値を受け取る。
  • それを発行する
  • Publisherはchainすることができて、間に入ったPublisherはデータを加工したりするのに使える。
  • 最終のPublisherからSubscriberは値を受け取る。
  • Publisherは値を発するのみで、そのタイミングはSubscriberが要求した時に発行される。
    • Subscriberが受け取るタイミングを調整できる。
  • Timer、NotificationCenter、URLSessionなどいくつかはPublisherが適用されている。
  • Key-Value Observingもbuilt-in publisherで提供されているのでpropertyはPublisherを通して扱える。

Timerは前回の理解通り適用されているが書かれている。
built-in publisherがどういうものかわからないけど@Publishedなどのキーワードで適用されるとかそんな感じだろうか?
Subscriberのタイミングで発行されるというのは理解していなかった。

SwiftUIは値が変更されたら発行して欲しいということだと思うが、俺れは毎回知りたい、とか私は10秒に1回でいいよ、とか僕は10個溜まったら知りたいとかできるということか?
今はよくわからんけど…