0228
昨晩はJSONのマッパーを書いていました。とりあえず必要なものは作れたのでよかった。というか僕の気分としてはかなり便利に使えるものになったような気がするのだけど、いろいろのケースでどう振る舞うかは知らない。とりあえず今回の案件では十分だろう。
結局、APIの応答のスキーマをCoreDataとは分離した上で、そのいくつかをCoreDataに変換できるようヘルパを各ことにした。APIがRESTful?に書かれているから、スキーマの大部分はCoreDataにも現れるモデルで書ける。このことは圧倒的二度手間感を生むが、同時に変換を容易にする。完全な結合はSwift1.1時点では(コンパイラの不具合のため)不可能で、1.2では修正されていると聞くけれど、別にあえてそうすることもないのでは、という気もする。なにが返ってくるかわからないAPIをCoreDataに近づけすぎるのはたぶん不正解で、それを吸収するためにいろいろ気にしなきゃいけないのなら、そのためにクラスが挟まるくらいどうってことないのかもしれない。
今夜はそれに伴う書き替え(ほぼ終わっているけれど)をします。これでJSONエラーのハンドリングがいい感じにできるようになったので、今度はCoreDataのエラーハンドリングをちゃんとしようかな。昔書いたヘルパをそのまま使っていて、おおむねよく動いているのだけど、エラーを握りつぶす悪い癖がある。というかエラーを返せるようにできていない。クラッシュはしないけれど。
そういえば美容院の予約を入れました。記録によれば九ヶ月ぶりです。明日の夕方。どきどき。