病みつきエンジニアブログ

機械学習、Python、Scala、JavaScript、などなど

iOSアプリデザイナーに身につけてほしい「ライブラリを探して試す能力」

私の考える最強のデザイナーは、ビジュアル的・UX的に良いデザインができるデザイナーですが、最強の“プロ”デザイナーは、そのデザインの実装コストが見積もれて、それに応じて段階的な実装の指示が出せるデザイナーだと思っています。

アプリ開発の現場では、爆速で(低コストで)最もBetterなアプリを作るのが非常に大事です。低コストで美しいデザインを実装したいですもんね。なので実装コストの感覚があるプロデザイナーは、最強なんじゃないかと思ってます。

しかし、特にiPhoneアプリにおいては、エンジニアであってもビジュアル面の実装コストが見積もれなかったり、実装がとても困難になることがあります(HTML・CSS・JSよりも相対的に難しいんじゃないかなあ、と個人的には思っています)。そのためしばしばライブラリに頼って実装することでコストカットを図ります。

今回は、そのライブラリに焦点を当てて、コストを見積もるための「探す方法」と「試す方法」について述べます。

探す方法

探すのは、実はそんなに難しくないです。だいたい便利なライブラリは、特にUI関係のライブラリは、CocoaControlsにまとまっているので、適当に検索してみると良いと思います。また、トップページには直近の人気なライブラリが取り上げられていたりするので、ぶらぶらブラウジングしてみるのもいいでしょう。

私が開発するニュースアプリのvingowでも、サイドメニュー用のIIViewDeckControllerや良い感じのUISwitchのようなSVSegmentedControlなどを使っています。

f:id:yamitzky:20130423133940j:plain

試す方法

CocoaControlsのライブラリのページにある[Download Source]のボタンを押すと、Githubのページに飛びます(Githubソースコードの共有サイトです)。

Githubからソースコードをダウンロードするのは別に難しくなくて、画面上部の[ZIP]を押せば良いです(昔の自分はgitが必要だと思ってました)。

f:id:yamitzky:20130422234804p:plain

ライブラリには、大抵Demoが同封されています。〜〜〜〜.xcodeprojという感じのファイルを開いてみるとXcodeが開き、実行できるようになっています(ここではXcodeのインストール・使い方には触れません)。

ライブラリには2つの系統があります。「UIControlをかっこ良くするもの」と「レイアウトやアニメーションを改善するもの」です(便宜的に2種類の類型にしました)。

UIControlをかっこ良くするもの

BButtonSVSegmentedControlなどがこれに当たります。これは、それ自体がViewのデザインを良くしたものです。そのため、ライブラリが設定項目としてないものに関しては、変更が難しかったり、変更のコストがかかったりします。

この系統のものは、そのライブラリのデザインに納得できるものや、ネイティブのUIControlよりはまだマシだと思うものや、色を変えるレベルの変更で済むもの、などを使うと良いと思います。

レイアウトやアニメーションを改善するもの

IIViewDeckControllerCIDoorwaySegueなどが当てはまります。

これらは、そもそもViewやViewControllerは自分で開発するものであることを前提にしています。レイアウトに関係のない、各パーツごとのデザインなどはエンジニアが実装します。そのため、純粋なView部分の実装コスト+α、の実装コストになります。

まとめ

ライブラリの探し方、試し方と、その扱いどころについて話しました。また、探したライブラリは、そのまま添付してエンジニアに伝えると「実装できない」的コメントを全力で叩き潰すことができるので、そういう点でも活用すると良いかと思います。

追記

問題意識としてあるのが、「実装」と「こだわり」のミスマッチです。デザイナーがこだわってないのに、実装コストもかかる、みたいなミスマッチです。ライブラリが使えれば、「一見実装コストがかかるように見えるが、このライブラリを使えば十分だ」というところで同意が取れて、よりよいアプリが作れるんじゃないかな、と思います。

URL