結果報告

こんにちは。krrです。

結論から言うと、iPhoneアプリは完成できませんでした。
作ろうとしていたのは、写真の上に手書きまたはキーボード入力で線や字を書いて保存できる、というアプリです。写真にテキストを添えるのであればメールでも様々なアプリでもできますし、手書きだけならそういうアプリを見かけましたが、それではどうしても画面内に書ける文字数が限られるために用途が違ってくるので、作る意味はあるだろうと。

まずはどこまでは行ったかのご報告です。
アプリを立ち上げて、カメラを使うのか、カメラロールから既存の写真をひっぱってくるのかを選択(アクションシートの表示:下からにゅっと出てきて選択肢を提示するあれです)、撮影/選択したものを画面に表示。表示したデータを加工できるようにビットマップデータへ変換。(途中に加工部分があって:ここができませんでした)加工が終わったら、今度はビットマップを元の写真データへと変換。と、ここまでです。

そしてどこができなかったかというと、入力を受け付ける、つまり文字通り肝心なイベント処理の部分です。シングルタップで手書き(そのまま指を離すまで線をひく)、ダブルタップでキーボード呼び出し(吹き出しを表示、その中にカーソルを表示)、としたかったのですが、そのための参考情報を探しているうちにタイムアップとなりました。

難しかった点は主に2つにまとめられるように思います。
プログラミングは実際には、厳密な意味で0から作ることではなく、既存のものを組み合わせることなのだと思います。実際、appleは膨大なライブラリとドキュメントを用意してくれています。しかし、自分がやりたいことを実現してくれるものがそのどの辺りにあるのかがわからなければ当然、使えません。そこを自分で探し当てて行くのがプログラミングの醍醐味の一つなのかもしれませんが、今回ほどライブラリアンについて欲しいと思ったことは多分そうありません。
また、appleのドキュメント以外に9冊の参考書を買い、ウェブでもあれこれ見ましたが、当然ながら、著者たちはそれぞれ自分の流儀でプログラミングし、説明します。ここではこうするけど実際にはこういうやり方もあるよ、という記述はあまり見当たりません。そこで、本の通りにやる部分から離陸して、自分で独自に作る部分に入る時、結局どうするのが一番よいのか、困ってしまいました(特に複数の著者のプログラムを組み合わせてみようという時)。これは勿論、どんなコードが最も美しいか、といった高度な話ではなく、プログラムを書く根本的なやり方がわかっていないことから来た難点だと感じています。

今後も、勉強は続けます。今回は、とにかく多くの本にあたる中で、自分に使えるものをピックアップするというのが基本姿勢でしたが、時間制限が解かれたので、まずは1冊選んで、サンプルアプリの制作も含めてテキストに沿って手を動かして行こうと思っています。手がなじんで、応用編=自作へ進むことを目指しつつ。

3ヶ月間、どうもありがとうございました。