想像してみてください、あなたはトップシンガーで、ファンは次の曲を絶えず求めています。 少しでも安心してもらうために、公開時には知らせることを約束します。ファンに更新を購読できるリストを提供します。そこへメールアドレスを記入することができ、新曲が利用可能になると購読者全員がすぐにそのことを受け取れるようになります。そして、スタジオで火災が発生するなど、何か大きな問題が生じて曲が公開できなくなったとしても、購読者に通知されます。 誰もがハッピーです: ファンはこれ以上あなたに押し寄せてくることはなく、かつファンは新曲を逃すことはありません。 これは、プログラミングでよくあることの実世界での例えです。 何かを行い時間を必要とする “生成コード”。例えば、ネットワークを経由してデータをロードするコードです。これは “シンガー” です。 準備が整ったら “生成コード” の結果が欲しい “消費コード”