JMAS(JMA SYSTEMS Corporation) JMAS(JMA SYSTEMS Corporation)
2013年12月03日

事例から考察!スマートデバイスを活用した業務システム構築ノウハウ

第2回 ネイティブアプリ開発のポイント

みなさん、こんにちは。
ジェーエムエーシステムズ(以下、JMAS)の中居 郁です。

前回のコラムでは、フロントアプリ開発の4つの手法について解説しました。ネイティブアプリ、Webアプリ、ハイブリットアプリ、フレームワーク利用開発といった方法があります。

今回は、その4つの手法の1つである”ネイティブアプリ”について、解説します。ネイティブアプリは、操作性や、表現力、デザイン性に富んだアプリを開発する際に適した開発手法です。

操作性を重視するならネイティブアプリがベスト!!

操作性を重視するならネイティブアプリがベスト!!ネイティブアプリとは、OS(iOS/Android/Windows)毎に、OS専用の言語で開発するアプリです。OS毎に開発するため、GPSや、加速度センサー、方位などの端末の機能をフルに活用でき、操作性や、表現力、デザイン性に富んだアプリを開発できます。また、オフラインで利用できるのも特徴の一つです。

ネイティブアプリは、第1回で解説しました4つの開発手法のなかで、最も洗練されたフロントアプリを開発できる手法です。

弊社では、外回りの営業担当者がお客様に製品やサービスを紹介する際に利用するカタログアプリや、全国展開をしている小売業様が各店舗で、商品の受け渡しなどを管理するための店舗用接客支援アプリなどを開発しました。

どちらもネイティブアプリの特性を生かした高いデザイン性の画面で、高速なレスポンスを実現し、ストレスフリーな業務を実現しています。

各事例は以下をご参照ください

・ 第8回 スマートデバイスアプリをご体感下さい!
・ 第9回 ドキュメント共有アプリ(ダイナミックドック)のご紹介

しかしながら、ネイティブアプリは洗練されたフロントアプリを開発できる一方で、以下のような注意事項があります。

  1. 異なるOS間でアプリを利用できない
  2. OSのバージョンアップの影響を受ける
  3. 各OS固有の問題がある
  4. 開発コスト
    1. ネイティブアプリ開発時の注意事項

      まず、1つ目の注意事項は、ネイティブアプリは各OS専用の言語でアプリを開発しているため、アプリを複数のOS間で利用することができないということです。
      下の図のように、iOS(iPhone、iPad)向けに開発したアプリは、iOSのデバイス(iPhone、iPad)のみで利用できます。Android、Windowsデバイスでは利用できません。

      OS毎による開発環境の違い

      また、次に注意しなければならないのが、OSのバージョンアップです。OSのバージョンアップに伴い、開発したアプリの改修が必要になるケースがあります。さらに、改修したアプリをスマートデバイスに再配布(再インストール)する必要があり、手間やコストがかかる場合があります。

      そして、3つ目が各OS特有の問題です。たとえば、iOSの場合、AppStore(Apple社が提供しているアプリを配布するサービス)を経由しないでアプリを配布する場合、つまり、自社専用の(自社内だけで使う)アプリを開発する場合には、iDEP(iOS Developer Enterprise Program)というApple社のライセンスが必要になります。反対に、AppStoreを経由してアプリを配布する場合には、iDEPは必要ありませんが、Apple社の審査を受けなければなりません。この審査を通らなければアプリを公開することはできません。公開までに時間がかかる場合があります。弊社では、スムーズに審査が進んだと仮定して、1ヵ月程度の審査期間をみています。

      Androidについては、端末依存の問題があります。画面の大きさや解像度が異なる端末が各社から販売されています。対応端末が多い場合には、開発工数が大きくなります。デバイスを限定しにくい、一般消費者向けのアプリを開発する際には、ここがネックになります。

      最後に、コストの問題ですが、ネイティブアプリは、対応するOSやデバイスが多い場合には、開発コストが他の手法より高くなる傾向にあります。また、OSのバージョンアップに対応するコストも開発時に検討しておく必要もあります。

      ネイティブアプリの注意事項 JMASネイティブアプリの注意事項

      ネイティブアプリについてご理解いただけましたでしょうか。ネイティブアプリには、上記のような注意事項がありますが、他の3つの手法に比べると洗練されたフロントアプリを開発できます。スマートデバイスを活用したシステムを構築する際には重要な要素になります。

      次回のコラムではWebアプリ、ハイブリットアプリ、フレームワーク開発手法について解説します。

      補足

      Windowsに関しましては、弊社の傳寶がWindows8アプリの開発経験をもとにコラムを書いています。詳しくはそちらをご覧ください。

      Windows 8 向けアプリ開発経験者が紹介する、Windows 8 を有効活用する方法!!

      セミナーを開催します!