モバイル・アプリケーション開発とは

夜明けの霧が立ち込める美しい夏のランドスケープの空撮

モバイル・アプリケーション開発とは

モバイル・アプリケーション開発とは、スマートフォン、タブレット、バーチャル・アシスタント用のソフトウェアを作成するプロセスであり、最も一般的にはAndroidおよびiOSオペレーティング・システム用です。

このソフトウェアはデバイスにプリインストールすることも、モバイル・アプリケーションからダウンロードすることも、モバイルWebブラウザーからアクセスすることもできます。この種のソフトウェア開発に使用されるプログラミングおよびマークアップ言語には、Java、Swift、C#、HTML5などがあります。

モバイル・アプリケーション開発は急速に成長しています。小売、通信、電子商取引から保険、医療、官公庁・自治体まで、組織が、リアルタイムかつ便利な方法で取引を行い、情報にアクセスするためのユーザーの期待に応える必要があります。

今日、モバイル・デバイスとその価値を解き放つモバイル・アプリケーションは、人々や企業がインターネットに接続するための最も一般的な方法です。関連性、対応力、成功を維持するためには、組織は顧客、パートナー、従業員が求めるモバイル・アプリケーションを開発する必要があります。

とはいえ、モバイル・アプリケーションの開発は困難に思えるかもしれません。OSプラットフォームを選択したら、モバイル・デバイスの制限を克服し、アプリの配信における潜在的なハードルを乗り越える必要があります。しかし、いくつかの基本的なガイドラインとベスト・プラクティスに従うことで、アプリケーション開発の取り組みを効率化できます。

いずれかのプラットフォームでのモバイル・アプリケーション開発の詳細について知るには、iOSアプリ開発Androidアプリ開発に関する記事をお読みください。

The DX Leaders

AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。

ご登録いただきありがとうございます。

ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。

プラットフォームを選択する

多くの独立系アプリケーション開発チームは、最初にAndroid用アプリを構築することを選択しています。なぜでしょうか。スマートフォンの大部分(約70%)はAndroidを使用しており、Google Playストアの制限はAppleアプリよりも少なくなっています。

一方、iOS用に開発されたモバイル・アプリケーションでは、サポートが必要なデバイスの数がはるかに少なく、最適化がより簡単になります。また、ユーザー維持率は通常、iOSアプリケーションの方が高くなります。

開発しているモバイル・アプリケーションの想定するユースケースや対象オーディエンスによっては、他にも考慮すべき点があるかもしれません。例えば、組織の従業員向けのアプリを設計する場合、従業員が使用するプラットフォームをサポートする必要があります。つまり、AndroidとiOSの両方で機能するクロスプラットフォームのアプリを開発することになります。

または、顧客向けのモバイル・アプリケーションを構築していて、そのほとんどがiPhoneを使用している場合は、iOSアプリケーションの開発を最優先事項にする必要があります。モバイル・アプリケーションを開発する際のその他の考慮事項には、地理的・文化的要因の影響を受ける可能性がある収益化ストラテジーや予想されるユーザー行動などが含まれます。

開発プラットフォームとデバイス管理ツールを統合することで、効率を高め、セキュリティーを強化します。

アプリケーション開発

さあ、クラウドでエンタープライズ・アプリケーション開発を始めましょう

この動画では、Peter Haumer博士が、IBM Z Open Editor、IBM Wazi、Zoweなどのさまざまなコンポーネントとプラクティスを実演しながら、ハイブリッドクラウドでの最新エンタープライズ・アプリケーション開発について説明します。

AndroidとiOSの両方の開発:ネイティブ・アプリか、それともハイブリッド・アプリか。

Androidオペレーティング・システムとiOSの両方のモバイル・アプリケーション開発を行う必要があるとしましょう。最適なソフトウェア開発アプローチは何か。

2つのネイティブ・アプリケーションを開発できます。ネイティブAPIとOS固有のプログラミング言語を活用すると、強力なアプリを構築できます。ほとんどのエンタープライズ・アプリ、特に大量のアプリケーション・プログラミング・インターフェース(API)トラフィックを必要とするアプリは、ネイティブ開発のメリットを受けます。

ネイティブ・アプリケーションを一度に1つずつ開発することにしたら、Androidから始めることになるでしょう。その理由は、独立系アプリ・デベロッパーがしばしばAndroidに注目するのと同じ理由からです。おそらく完全なアプリケーションをAndroid上でMVPとして開発し、リリース後にiOSに変換して最適化すれば、より良い成功を収めることができるでしょう。

2つのオペレーティング・システムの機能が異なり、クロスプラットフォームの操作が不可能であるため、ネイティブ言語のコードをデバッグして書き直し、フロントエンドのユーザー・インターフェースを再設計する必要があります。

では、完全にゼロから始めるとどうでしょうか。コードを新しいプログラミング言語に変換することはできませんが、バックエンドの多くはクロスプラットフォームで複製できます。フレームワーク、ライブラリー、サードパーティの拡張機能は多くの場合、両方の環境で同一に機能するため、コストのかかる再作業を回避できます。また、IBM® Mobile Foundationなどの事前に構築されたモバイル・クラウド・サービスを使用して、Webバックエンドを管理することもできます。

もう1つのオプションは、ハイブリッドクラウドに移行し、一度作成すればどこでも実行できるアプローチを採用することです。ハイブリッド・アプリは、どちらのプラットフォームでも機能できる単一のコードベースを使用します。通常、Java、JavaScript、HTML、CSSなど、普遍的に認識されているプログラミング言語でコーディングされます。オペレーティング・システムのネイティブAPIへのアクセスが拒否されるため、ハイブリッド・モバイル・アプリケーション開発は、単純なWebアプリケーション、機能が制限された3ページまたは4ページのモバイル・アプリケーションに最適です。

Think Light:モバイル・プラットフォーム向けの構築

ネイティブまたはハイブリッド・モバイル・アプリケーション開発を選択する場合でも、最初に乗り越えなければならないハードルは、モバイル・デバイス上のリソースが比較的限られていることです。ターゲットのモバイル・デバイスは、デスクトップ・コンピューターやエンタープライズ・サーバーよりも処理能力とメモリーがはるかに少なくなります。

これらの制約は、特に従来のWebアプリ用ソフトウェア開発の比較的無限の参考情報に精通している場合には、大きな課題のように見えるかもしれません。

モバイルプラットフォームの参考情報が限られているため、アプリ設計の目標を調整する必要があります。

モバイル・アプリケーション開発プロセス全体を通じて、開発者はモバイル・アプリが一般的なデスクトップ・アプリケーションよりもリソースの消費が少なくなるように取り組む必要があります。

優れたユーザー・エクスペリエンスを提供することは不可欠です。まずは、モバイル・アプリのユーザー・インターフェースはデスクトップ・アプリケーションのインターフェースよりもシンプルであるべきであることを理解することから始まります。クリティカルな機能に焦点を当てた簡単なUX設計を作成することで、参考情報を削減しながら、より良いエクスペリエンスを提供できます。

モバイル・アプリケーションのインターフェースは、タッチ式に設計される必要があります。モバイルユーザーは、アプリを簡単にナビゲートし、過度に入力することなくインプットを提供できる必要があります。

幸いなことに、効率的でシンプルなタッチベースのアプリに対するこれらの要件は、ユーザーの期待に沿ったものになっています。モバイル・ユーザーは一般に、数回タップするだけでタスクを簡単に完了したいと考えています。彼らは、何よりも速く、便利で、簡単にモバイル・デバイスで使用できるアプリを求めています。

クラウドへの処理のオフロード

モバイル・アプリケーションで、通常のモバイル・プラットフォームがサポートできるよりも多くの処理が必要な場合はどうすればよいでしょうか。その処理をクラウドにオフロードすることを検討してください。

APIを適切に使用することで、アプリの速度を低下させたり、実行中のデバイスに負担をかけたりすることなく、アプリをクラウド・ベースのサービスやデータベースに接続し、高度な機能を提供できます。データ・ストレージとキャッシュをクラウド・ベースのサーバーにオフロードして、デバイスにほとんどデータを残さないようにすることもできます。

高度なクラウド・サービスでアプリを拡張

クラウドには、性能の向上以外にも他の利点があります。モバイル・アプリケーションを強力なクラウド・サービスに接続して、主要な機能を追加し、使いやすさを向上させます。

APIを採用して、モバイル・アプリケーションの強化に役立つ高度なクラウド・ベースのサービスなどの主要な機能を統合します。これには、プッシュ通知、IBM® Watson、搭載AI分析、モノのインターネット(IoT)スマート・デバイスの統合などが含まれます。

開発者プログラムに参加する

AndroidもiOSもオープン環境ではありません。アプリケーションを正式に配布する前に、適切な開発者プログラムに参加する必要があります。



Androidモバイル・アプリケーション開発プログラムでは、既存のGoogleアカウントを使用して開発者アカウントを作成し、25米ドルの料金を支払い、アプリケーションを送信できます。Androidの公式ストアであるGoogle Playには、公開前に満たさなければならない品質基準がありますが、それらは実際のルールというよりはガイドライン的なものです。アプリ開発プロセスの一環として、アプリケーションをGoogle Playストアの外部で配布し、ユーザーが直接ダウンロードしてインストールできるようにすることもできます。

対照的に、Appleモバイル・アプリケーション開発プログラムは、高い参入障壁を設けています。年間99米ドルのプログラム料金を支払い、高い基準に従う必要があります。プログラムに参加すると、オペレーティング・システムのベータ版と独自のフレームワークまたはAPIに早期にアクセスできます。アプリの高い基準を満たすことは、高品質のアプリを開発したことを世界に意味することにもなります。

IBM® MaaS360のバッジ
関連ソリューション
IBMのエンタープライズ向けJavaアプリケーション・サービス

Javaアプリケーションを開発および配信するためのフルマネージドのシングルテナント・サービス。

Javaアプリの詳細はこちら
DevOpsソリューション

DevOpsソフトウェアとツールを使用して、複数のデバイスや環境でクラウドネイティブ・アプリケーションを構築、デプロイ、管理します。

DevOpsソリューションの詳細はこちら
エンタープライズ・アプリケーション開発サービス

クラウド・アプリケーション開発は、一度構築すれば、迅速に反復し、どこにでもデプロイできます。

アプリケーション開発サービス
次のステップ

IBM Cloudアプリケーション開発コンサルティング・サービスは、クラウド戦略を合理化するための専門家のガイダンスと革新的なソリューションを提供します。IBMのクラウドおよび開発のエキスパートと提携して、アプリケーションをモダナイズ、拡張、高速化し、ビジネスに変革をもたらします。

アプリケーション開発サービスの詳細はこちら IBM Cloudを無料で構築開始