だるろぐ

明日できることは、今日しない。

燃費記録用の Windows ストアアプリを作ってみた

f:id:daruyanagi:20120917215840p:plain

昔、Windows Phone 向けに作っていた燃費記録アプリを Windows ストアアプリに移植してみた。移植といっても、コードの共通部分はほとんどないけれど……というのも、移植元のコードが腐ってた(ぁ

丸二日ぐらい格闘していたのだけれど、ぶっちゃけ疲れた。

  • ライブラリがいろいろ足りない。ファイルベースのデータベースすらない*1
  • サンプルがてら開いてみたテンプレのコード量に挫折しそう*2
  • WPF/Silverlight と微妙に違うところに足をすくわれる(まぁ、WinRT だし)
  • XAML に慣れてない&タイプミスでバインディングがうまくいかず悩みまくり
  • いろいろなレイアウトに対応しなきゃいけない

とくに最後は素人には酷で、

f:id:daruyanagi:20120917220217p:plain

スナップしたときのデザインがボロボロなのを、

f:id:daruyanagi:20120917220222p:plain

ここまで治すのに3時間ぐらいかかった。しかも、テンプレートをよく読んでみると、もっとエレガントな方法があるらしい*3。Windows ストアアプリで情報発信している人までは追い切れていないけれど、全体的に情報量が少なくてかなりきつかった。だったら自分で書けよ! って感じなのだけれど、書くためにはその何倍も理解してなきゃダメなんだよ、コンチクショウ!

f:id:daruyanagi:20120917222754p:plain

でも、まぁ、ここまでできて妙な達成感はあった(ぉ

一つの収穫は M-VM-V を意識したプログラミングの長所を実感できたところ。ちゃんと M-VM を作っておけば、V の変更がとても簡単になり、かつ M への影響を(理想的には)ゼロにすることができる。


MVVM 星人の言ってたこと、やっと少しだけわかったよ ( `ー´)ノ

年内にはカタチにできそうだけれど、今月中のストア提出はあきらめムードだなぁ。だれだよ、Windows ストアアプリは簡単に作れるとか言ったの。

*1:いくつか試してみたけど動かなかったり……

*2:あとになってみると、それほどたいそうなことをしていないのがわかった

*3:ViewState というのがわからない