しょうむないウェブアプリシリーズ第3弾? 上の句(単語でもいいが)を入れると、最大3択で下の句の提示してくれ、その中から気に入った句を選択すると、無事和歌が完成するというシンプルなウェブアプリ。
技術的な話
シンプルなアプリだが、内部ではソレナリのことをやっている。まず、入力画面で文字列の入力を関知したら、JavaScript(以下、JS)が反応し、Ajaxによって入力情報をPHPファイルに渡す。PHPファイルはWebAPIにアクセスし、回答例を取ってきて、JSに渡す、JSは帰って来た答えをhtmlの所定の場所に追記する。
そのようにして下の句の画面に表示し、どれかが選択されたら、上記と同じhtml->JS->PHP->JS->htmlの流れでユーザーが入力した上の句とAPIが返してきた答えの中から選択された下の句を合体させて最後に表示、となる。ソースは下記にアップしてあるので、もし気になる人はご覧頂きたい。
bono1972/a3rt_text_suggest|GitHub
最初はなんとかPHPだけで済ませたいと思っていたのだが、たったこれだけの行程でも間に司令塔としてJavaScriptを介在させた方が流れがスムーズになる。気がつけば、これでもちゃんとMVCモデルとなっている。
技術的じゃない話
今回使ったWebAPI、text suggest型のもので現代文も続きの文章を考えてくれる。最初は現代文で、まずユーザーが書き出しを提示し、それにAPIが答え、その答えにインスピレーションを得たユーザーが更に次の言葉を書く、という人間とAIによるハイブリット小説みたいのを考えていたのだが、どうもAIがそこまで賢くなくてね・・・。まあただで使わせてもらっているので贅沢は言えない。結局、それなりの見栄えになる和歌に設定した次第。だけども、そのせいでいかにもプロバイダー側がサンプル例で作りそうな味気ないものになってしまった・・・。ハイブリット小説を思いついた時は結構面白いものになると思ったんだけどね。AIのより一層の進化を期待したい。ちなみに、ユーザー入力の部分に下ネタを入れると、とても馬鹿馬鹿しくなって、それだけちょっと笑えるので試してみてほしい。
そんな訳で
あんまり面白いものは作れなかったが、個人的には特にAJAXの知識が深まって良かった。しかし・・・みんながこれ面白い!と思うようなものを一発作りたいねぇ。