読者です 読者をやめる 読者になる 読者になる

指から文字がどんどん出てくる:3日目

1日目にはスロットという概念を導入し、接触による交換を基本とした(というかそれしかできない)操作モデルをつくりました。が、同じ文字列を何回も入力するのはどうするか?とか、使わずに破棄するにはどうするか?といった問題が発生します。そこで、操作は変更せずにスロットを拡張することで解決を試みます。

形式変換・複製・破棄

さて、実は前回にひっそりと「各スロットは自分の持っている文字列を何らかの方法で示してもいいし、示さなくてもいい」と書いていました。これはスロットが内部に保持しているデータを自動でコピーして、それを人間が読める画像に変換していることに他なりません。この見方をすると、例えば文字列をQRコードとして表示するとか、読み上げるとか、いろいろなバリアントが考えられます。

そして形式を維持した複製には、主スロット+副スロットがあって、副スロットの内容を頻繁に主スロットの内容で上書きする、というような表現が考えられます。破棄というのは単に空の文字列で定期的に上書きされるスロットを用意すれば良いのです。

表現

スロットの振る舞いは図形的に表すことも考えられて、例えば↓のようなものがありえます。

形式の表現にはᚢᚹ(U8,UTF-8表現)、ᛗ(人間、触れる場所)のようにルーン文字を使ってます。私はこういうのが大好きなので、たぶんこの系列のデザインはどこかに取り入れるでしょう。

さて

スロットの振る舞いを変えることの利点は、操作を単純に保ったまま機能をいくらでも増やせることと、その説明と機能を同じように表現できることに有ります。例えば、二回タップすると〇〇、長く押すと△△、みたいなUIは際限なく覚えないといけないシーケンスが増える可能性がありますし、そのような時間的系列の説明はどうしても実際の動作とは分離して表現されることになります。

ところが操作をひとつに限定し、スロットの種類と数を増やすことで機能を空間に割り当てることができるようになります。そうすると説明であれ何であれ、その空間内であれば自由に表現できるようになります。