パソコンを描いた絵でたまにみるのが、こんなやつで。(図1)
おや、何か、おかしいなぁと思うと、キーボードとディスプレイがあるが肝心のパソコン本体がない! 正しくは図2。
(「今どきはクラウドだから図1に近い」というのはまた別の話)
同じような話で、動画をプレイするアプリを作ろうとした場合。
図3のように考えてる人がいる。
「動画ライブラリにGUIかぶせればいいじゃん」みたいなことだ。
それでできないこともないが、図4のモデルを推奨する。
図3のモデルだと「脳みそ」がないのだ。GUIのそこかしこに「分散記憶」や「条件反射」のようなもので機能がが織り込まれるのだ。 「君はいま何をしようとしているの?」という質問に答えてくれる人がいないのだ。プラナリアのようだ。
その点、図4ならプレーヤ本体に「君は何をしようとしているの?」という質問すれば、「うーーん、今は指定されたファイルの先頭から再生しようとしてるところ、あとちょっと待ってね」って答えてくれるのだ。具体的には、対応したいくつかの変数をみれば、そういう情報がわかるということ。(まぁ、そういうふうに作らないとだめだけど・・・)