fukayatsuのブログ

主にコーディングとか、技術的なことについて。間違い等ありましたら容赦なくツッコミお願いします。

自分が端末の(ヘビー)ユーザーで有ることとアプリ開発について

スマートフォン、特にAndroidのアプリを作るなら開発チームやプロデューサーはその端末の(ヘビー)ユーザーで有るべき。」
という(当たり前の?)趣旨です。以下ぐだぐだに思ったことを綴ります。



自分はAndroidユーザー歴が1年半ぐらいです。Android2.1のあたりです。

初めて買ったスマートフォンが運良くdesire(※1)でした。CMベースのROMを入れたり時にはnightlyを追いかけたりもしてAndroid標準のUIに触れる事が出来ました。あとはAndroidがオープンなお陰で端末を手に入れる前からアプリを作ったりしていました。

お陰で半年ぐらい前から本格的にアプリ開発するときもAndroidらしい挙動というのが直感的にイメージできていたつもりです。あとやっぱり苦楽を共にしたというAndroidに愛着があります(※2)。



ここ最近の2ヶ月ちょっとくらいの期間はわがままを言ってiPhoneアプリ開発をさせてもらいました。Android/iPhone/(WPも?) のマルチプラットフォーム展開する場合に実装レベルで知っておきたかったことと、チームメンバーがスクラムやTDDの導入などに積極的だったこと、などが理由です。

メモリ管理などはまだまだ気持ち悪いと思うことろが多々ありますが、UIに対する考え方やユーザビリティに対する考え方が変わりました。Appleのガイドラインを幾つか読むことになっただけでもiPhoneチームの一員として仕事させていただいた価値があったと思っています。

スクラムやTDDに関してはiPhoneアプリ開発そのものに精一杯になってしまい、なかなか手がまわらない様な感じでした。二兎を追う者はなんとやら...ですかね。

あと、普段iPhone(Obj-C)を使わないのでどんなアプリが有るのかとか常套手段とかがよくわからず歯がゆかったです。ただiOSの場合はガイドラインがきちんとしているのでそれを読んで補うこともできました。あとはXcodeSVNの相性が絶望的に悪かったのですが、いろいろなシガラミで中央リポジトリをGitに出来なかったのは残念でした。



Androidの場合はあまりそういうガイドラインがあまり存在せず(※3)、
またあまり制約がないのでiPhoneのUIをそのまま移植しただけになりがちに思います。
多解像度対応やスマートフォン/タブレット対応、ガラスマの機種依存もありますしね...

逆に言うと色々な端末に対応できるだけのポテンシャルは(多分)有るわけで、
Androidが好きとしてはスマートフォンからタブレットまで適切なUI(※4)で対応するスマートなアプリを作りたいわけです(※5)。

そうなると自分が日々勉強するのはもちろんのこと、デザイナーさんもプロデューサーさんも皆さんにもAndroidを使い倒して好きになってもらう+最新のベストプラクティスを勉強してもらう必要が出てきます。

近いうちにそういう感じのチームで仕事したいなーというポッキー&プリッツの日でした。


※1 globalな端末なのでroot化やrom焼きの情報が豊富でした。
※2 最近まで1台持だったので文鎮化は恐怖でした。
※3 Google IOやGDDなどでベストプラクティスが示されたりはしている。
※4 ActionbarとかDashboardとかFragmentとかViewPagerとかQuickActionとかとか
※5 CIとかTDDとか、開発側もスマートにできたらさらに素敵ですね。