• はてなブックマークに追加
  • Yahoo!ブックマークに登録

iOS VS Androidに、新たにWindowsPhoneが本格参入

スマホ3つどもえ時代到来!
開発スタイルの特徴比較

今年に入って急速に普及しているスマートフォン。市場の盛り上がりに合わせて、スマホ向けのアプリ開発ニーズも活発化している。その上、8月から日本でも本格的な販売をスタートさせた「WindowsPhone」の登場によって、今後さらなる開発競争が予想される中で、「iPhone(iOS)」「Android」と合わせた3つの、スマホ主要3OS別の開発スタイルの特徴について探ってみたい。

(総研スタッフ/山田モーキン) 作成日:11.10.12

WindowsPhone、iPhone 4Sの発売でさらに加熱するスマホ市場

2008年、日本で発売された「iPhone 3G」、さらに翌年の「iPhone3GS」の登場を機に、日本におけるスマートフォンの普及が急速に高まっていく。
一方、iPhoneの独占場になりつつあったスマートフォン市場に昨年、米Googleが中心になって開発した「Android OS」を搭載したスマートフォンが急速に普及。その勢いはiPhoneを上回るほどで推移しているのは、すでにご存じの通りだ。
そこに今年8月、先行する「iOS」「Android OS」に対抗する第三勢力となる、マイクロソフトの「WindowsPhone OS」の最新版を搭載したスマートフォンが発売。そして今月、新たに「iPhone 4S」をアップルが発表したことで、今後さらにスマートフォン市場は過熱していく様相を呈している。
そこで今回、WindowsPhoneの本格展開を機に、3つのOSそれぞれの、アプリ開発者の視点から見た特徴やメリット・デメリットについて、以下の4名の方のご意見を元にまとめてみた。

石谷伊左奈氏(イサナドットネット株式会社 代表取締役)
藤瀬邦彦氏(イサナドットネット株式会社 ソフトウェアエンジニア)
長瀬敦史氏(株式会社リトルアプス 代表取締役 ソフトウェアエンジニア)
舩見高貴生氏 (株式会社リクルート メディアテクノロジーラボ チーフエンジニア)

iOS Android WindowsPhone 3つのキャリア別開発スタイルの特徴

まず、3つのOS別の特徴について以下のようにまとめてみた。

iOS
Objective-C という、一般的にはそれほどメジャーではない言語で開発するというスタイル、またApp Storeの厳しい審査を受ける必要があるなど、初心者などにとっては敷居の高い開発環境ではあるものの、Appleならではのデザイン性やクリエイティビティの高いUIや緻密に計算されたOSの完成度の高さを評価する声は多い。
また、「そろそろ」という絶妙なタイミングで新技術やサービスをリリースするなど、Appleならではの戦略が、開発者のさらなる開発意欲の喚起を引き起こす点が、他のOSにはない魅力だ。

Android
開発の自由度が高いが故のメリット&デメリットが多々あることが、Android最大の特徴。その中でさまざまなアプリや機能・情報を吸収・整理しつつ、最適な活用スタイルを確立させることが、質の高いアプリを生み出す重要なカギを握る。そのため、技術者の設計力や組み合わせのセンスが求められる。
逆にいえば、どのように作ることが正解なのか模索しながら設計・実装していく開発スタイルに、面白さがある。またどれだけシンプルな設計かつ高精度&拡張性を維持するか、という高いテーマを掲げて開発に挑戦する魅力もある。

WindowsPhone
歴史が浅く開発者も少ないため、情報が少ない・サポート体制が不十分・iOS Android OS向けアプリと同じような動作が保証されているのか、といった問題点もある。
しかし裏を返せば、まだまだ使っていない機能が多々あり、さらに最新版の7.5がリリースされたばかりであるため、これから新機能を使って開発してみたい技術者にとっては、魅力的なプラットフォームといえる。
その上、世の中に数多く存在する.netやC♯のMS系の言語開発経験者にとって、慣れた環境で開発できるメリットを活かせば今後、iOS やAndroid OSに十分対抗できるほど、大きな市場に飛躍するチャンスがある。

そこで、次の項目からはさらに踏み込んで、3OS別のアプリ開発の視点から見たメリット&デメリットについて紹介していきたい。

iPhone(iOS)向けアプリ開発の特徴


メリット
・良質かつクオリティの高いアプリが多い
・iPhone 1機種のみに対応すればいいので、開発の手間が省ける
・UIの作りこみに関しては、iOSに分がある。
・ページをめくる機能の“芸の細かさ”やデザインそのものに対する、クオリティ・アイデンティティの高さ
※今月リリースされる「iOS 5」によるメリット
・先述したページをめくるアニメーション機能のSDK(ソフトウェア開発キット)が開放されたことで、アップル以外の開発者でも容易に開発できるように
・コンテンツのバックグラウンドでの自動更新&アイコンの差し替え・・・例:Newsstandでは、アプリの更新時に自動的にアイコンが変えられるので、毎日新しい朝刊が届くごとにアイコンが変わる、といった仕組みが作れる
・Twitter連動

デメリット
・Objective-C メモリ管理などしっかりと自分で作りこまないと機能しない メモリの解放を適切にする意識が常に求められる
・App Storeにより厳しい審査
・OSの情報量が非常に多いため、理解して使いこなすための勉強が必要
※iOS5が現在、ベータ版であることのデメリット(※正式版がリリースされれば、かなり解消される可能性がある)
・ベータ版の場合はNDAがあって、ブログ等で情報共有ができない
・ベータ利用ユーザー向けの専用の掲示板があり、活発ではあるものの、情報量としては限られているため、ベータ段階での開発はかなりハードルが高い
 またバグもあるため、さくさく進まない
・ベータ段階では、リファレンスはあるが、サンプルコードが少ない。特に実際に動くサンプルが少ないため、実装速度がなかなか早くならない
 (※ただしWWDCのビデオやスライドにサンプルコードがあり、ビデオを見れば解決できることも多い。しかし200本くらいあるので、全部チェックするのは大変

Android OS向けアプリ開発の特徴


メリット
・アプリ間の連携の自由度が高い。各アプリ間の連動がシームレス(例:Google Mapと、自分の位置機能Mapを連携させる)インテント機能により、マッシュアップのように協調してアプリを成長させることが可能
・Junit(テスティング・フレームワーク)が動くため、UIもテスト可能
・Twitterアプリとの連携も可能
・何かアプリを作るとき、不得意な分野の機能に関しては他のアプリと連携してフォローしてもらい、得意分野の機能開発に集中できる
・アプリケーション開発に必要なライブラリのAPIは、そのほとんどが公開されている、なおかつ、デバイスの持つさまざまな機能に自由にアクセスすることが可能
・Dalvik VMを搭載するQEMUベースのエミュレータが高性能
・Javaの知見が蓄積されている&オープンソースであるため、コードを見ればトラブルなどの原因を追及できる
・adbというツールを利用すれば、PC上から端末そのものにシェル接続し、システムレベルで管理可能

デメリット
・複数のメーカーから発売され、中には独自のフォーマットにカスタマイズさせた機種もあるため、画面サイズや解像度やOSの動きなど各種仕様の違いから、同じAndroid OS搭載機種でも、機種ごとにアプリ動作を最適化〜検証〜カスタマイズさせる手間がかかる
・特に画面レイアウトの作成や画面間でのパラメータの受け渡しに手間がかかる
・自由がある分、未成熟な部分もあり、iOSの優れたデザイン・インターフェースに比べると未完成の印象が強い UIがきれいに動作しないケースも

WindowsPhone OS 向けアプリ開発の特徴


メリット
・これまでのモバイル向けOSである「Windows mobile」を一旦取り止め、ゼロから作り直したことで、開発者としては作りやすい機能を持つ
・6.5までの動作がもっさりしていたのに対し、7.1以降に関しては非常に軽快な動作かつスマートなUI(直観的)で、開発者としては作りやすい環境。特に「パノラマビュー」や「ピボットビュー」等、iOSやAndroid OSにはないUIコンポーネントがあることで、どのようにこれらの機能を使い分けてアプリ開発に活かしていくのか、挑戦できる面白さがある。
・「ネイティブアプリ」を活用することで、アプリ開発の負担が軽減できる
・.netやC♯、Silverlightで開発できるので、経験者には作りやすい。MSならではの開発環境があるので、Windows PC向けの開発経験のある技術者にとっては、なじみやすい。
Silverlightの機能を使用すると、多様なUIのアニメーションを作成できるので、これをアプリにどう落としこんでいくかが課題。またXNA上にSilverlightのコンポーネントを乗せることが可能に(ver.7.5から)。そのため、例えば「3D描画はXNA、ボタン等はSilverlightで実装する」ことが可能に。
iOSと同じように、MSによって基本スペックやフォーマットが決まっているため、シンプルに作ることができる

デメリット
まだ歴史の浅いOSであるが故に、以下のようなデメリットや懸念点も。
・サポート体制がまだ整っていない。またコミュニティ活動も活発でない
・ブラウザがHTML5に対応していない(※7.5からIE9ベースのブラウザとなったため対応している。ただしまだ非対応サイトも多い)
・iOSやAndroidと同じアプリをWindowsPhoneで出す場合、UI設計で苦労する可能性がある。また複雑なアプリや大量データを処理するアプリの場合のレスポンスの悪化、悪化した場合のパフォーマンスチューニングで苦労するのでは、といった懸念点がある。
 

以上、3つのOS別アプリ開発における特徴について探ってみたが、開発者視点で見ても今後、それぞれのOSにおいて大きな変化や進化が起こることは間違いない。そしてどのOSにおいても、開発者にとって挑戦しがいのある時代がすでに幕を開けているといえよう。

本レポートは総合転職サイト「リクナビNEXT」連動コンテンツです。 Supported by リクナビNEXT

  • はてなブックマークに追加
  • Yahoo!ブックマークに登録
あなたを求める企業がある!
まずはリクナビNEXTの「スカウト」でチャンスを掴もう!
スカウトに登録する

このレポートを読んだあなたにオススメします

“シンプルかつリッチ”を目指すスマホ向け究極のブログサービス

Amebaの新スマホブログ「Simplog」開発秘話

サイバーエージェントがスマートフォン向けの新しいブログサービスを8月にリリースした。「Simplog」は“シンプルだけ…

Amebaの新スマホブログ「Simplog」開発秘話

来春には大阪、福岡に開発拠点を設置

サイバーエージェント、スマホ技術者の育成と採用強化

人気企業の採用実態サイバーエージェントのスマートフォン対応が急速に進んでいる。積極的な中途採用を展開してきたが、スマートフォン開発経験者はまだ市場…

サイバーエージェント、スマホ技術者の育成と採用強化

2011年「スマートフォン&タブレット端末」元年

沸騰するモバイルアプリ開発案件&採用ニーズの全容

昨年はスマートフォンの普及が飛躍的にアップしたことで、以前より活況を呈していたモバイル向けアプリ開発ニーズもさらに高まっている。…

沸騰するモバイルアプリ開発案件&採用ニーズの全容

過去の写真の加工、カラー版、別の漫画タッチが実現するか

漫画カメラが進化する!あなたの欲しい機能が追加?

スマホアプリの「漫画カメラ」。エンジニアなら知っていますよね? 私もユーザーのひとりですが、まだ知らない人に教えると…

漫画カメラが進化する!あなたの欲しい機能が追加?

アゲハ田中里実の“実のなる”ガールズアプリレビュー

話題のメッセージアプリLINEが女子ウケするのはなぜ?

アゲハ田中里実のガールズアプリレビューファッション性、企画力、ソーシャル発信力のある女性コミュニティ「ソーシャル・ガールズ」を運営し、その生声をもとにした商品企画を得…

話題のメッセージアプリLINEが女子ウケするのはなぜ?

広める?深める?…あなたが目指したいのはどっちだ

自分に合った「キャリアアップ」2つの登り方

「キャリアアップしたい」と考えるのは、ビジネスパーソンとして当然のこと。しかし、どんなふうにキャリアアップしたいのか、…

自分に合った「キャリアアップ」2つの登り方

この記事どうだった?

あなたのメッセージがTech総研に載るかも

あなたの評価は?をクリック!(必須)

あなたのご意見お待ちしております

こちらもお答えください!(必須)

歳(半角数字)
(全角6文字まで)
  • RSS配信
  • twitter Tech総研公式アカウント
  • スカウト登録でオファーを待とう!
スマートグリッド、EV/HV、半導体、太陽電池、環境・エネルギー…電気・電子技術者向け特設サイト

PAGE TOP