モバイルアプリ開発

モバイルアプリ開発とは、 1台以上のモバイルデバイス PDA、EDA、携帯電話など)向けにモバイルアプリを開発する行為またはプロセスです。[ 1 ]このようなソフトウェアアプリケーションは、多くのハードウェア制約を考慮した上で、モバイルデバイス上で動作するように特別に設計されています。一般的な制約としては、中央処理装置(CPU)のアーキテクチャと速度、利用可能なランダムアクセスメモリ(RAM)、限られたデータストレージ容量、ディスプレイ(技術、サイズ、寸法、解像度)や入力方法(ボタン、キーボード、タッチスクリーン(スタイラス付きまたはなし))の大きなばらつきなどが挙げられます。[ 2 ]これらのアプリケーション(または「アプリ」)は、製造時に携帯電話にプリインストールされるか、サーバー側またはクライアント側の処理(JavaScriptなど)を使用してWebブラウザ内で「アプリケーションのような」エクスペリエンスを提供するWebアプリケーションとして配信されます。[ 3 ]

モバイルアプリ開発分野はヨーロッパで著しい成長を遂げています。プログレッシブ・ポリシー・インスティテュートの2017年の報告書によると、 2017年1月時点で欧州連合(EU)全体のアプリ経済における雇用数は189万件と推定されており、前年比15%増加しています。これらの雇用には、モバイルアプリ開発者やアプリ経済を支えるその他の職種が含まれます。[ 4 ]

概要

モバイル デバイス向けのアプリケーションの開発を容易にし、一貫性を保つために、さまざまなアプローチが採用されてきました。

製品を出荷する企業(例:Apple、iPod/iPhone/iPad)のほとんどは、公式のソフトウェア開発キット(SDK)を提供しています。また、何らかの形でソフトウェアテスト品質保証(QA)を提供する場合もあります。SDKやその他のツールの提供と引き換えに、開発者候補者は機密情報の共有を制限する秘密保持契約(NDA)に署名する必要がある場合があります。

開発プロセスの一環として、モバイルユーザーインターフェース(UI)設計は、モバイルアプリ開発における重要なステップです。モバイルUIデザイナーは、制約、コンテキスト、画面スペース、入力方法、モビリティなどを設計の枠組みとして考慮します。モバイルUI設計における制約には、ユーザーの集中力の持続時間や、ユーザーの手の大きさに合わせたモバイルデバイスの画面サイズといったフォームファクターが含まれます。モバイルUIのコンテキストには、モバイルアプリ内でのユーザーインタラクションから観察できる、デバイスの使用場所や使用時間といったユーザーアクティビティからのシグナルキューが含まれます。このようなコンテキストの手がかりは、予定やアクティビティのスケジュール設定時に自動提案を提供したり、ユーザー向けの様々なサービスリストをフィルタリングしたりするために使用できます。

デバイスとのインタラクションの中心となるのは多くの場合ユーザーであり、インターフェースはハードウェアとソフトウェアの両方のコンポーネントで構成されます。ユーザー入力によってユーザーはシステムを操作でき、デバイスの出力によってシステムはユーザーの操作の効果を示すことができます。

モバイルUIデザインの目標は、主に分かりやすくユーザーフレンドリーなインターフェースを実現することです。これらの機能は、モバイルエンタープライズアプリケーションプラットフォームまたは統合開発環境(IDE)によってサポートされます。

モバイル アプリケーションの開発者は、モバイル ハードウェアの熾烈な競争と各プラットフォーム内の変更により、画面サイズ、ハードウェア仕様、構成が異なるさまざまなデバイスも考慮する必要があります。

今日では、モバイルアプリは通常、公式のオンラインストアまたはマーケットプレイス(例:Apple:App Store、Google:Google Play)を通じて配布されており、開発者がアプリを申請して承認を得てこれらのマーケットプレイスに掲載されるまでの正式なプロセスが存在します。しかし、歴史的には必ずしもそうではありませんでした。

モバイルUI(フロントエンド)は、企業システムへのアクセスをサポートするためにモバイルバックエンドに依存しています。モバイルバックエンドは、データのルーティング、セキュリティ、認証、認可、オフライン作業、そしてサービスオーケストレーションを容易にします。この機能は、モバイルアプリサーバー、モバイルバックエンド・アズ・ア・サービス(MBaaS)、サービス指向アーキテクチャ(SOA)インフラストラクチャなど、複数のミドルウェアコンポーネントの組み合わせによってサポートされています。

プラットフォーム

モバイル アプリの開発、展開、管理に必要なソフトウェア開発パッケージは、開発者が 1 つ以上のターゲット プラットフォーム向けにアプリケーションを作成、テスト、展開できるようにする多くのコンポーネントとツールで構成されています。

フロントエンド開発ツール

フロントエンド開発ツールは、ユーザー インターフェイスとユーザー エクスペリエンス (UI-UX) に重点を置いており、次の機能を提供します。

  • UIデザインツール
  • デバイス機能にアクセスするためのSDK
  • クロスプラットフォームの宿泊施設/サポート

注目すべきツールを以下にリストします。

ファーストパーティ

ファースト パーティ ツールには、特定のハードウェア プラットフォームの設計を担当する企業 (Apple、Google など) またはその代理企業が公開した公式SDKや、そのハードウェア用のモバイル アプリを開発する目的で公式にサポートされているサードパーティ ソフトウェアが含まれます。

プラットフォームプログラミング言語利用可能な デバッガーエミュレータが利用可能 統合開発環境が利用可能 クロスプラットフォーム展開 インストーラーのパッケージオプション 開発ツールのコスト
アンドロイドJavaですが、コードの一部はCC++

コトリン

Eclipseに統合されたデバッガ、スタンドアロンのデバッグモニターが利用可能 はい EclipseIntelliJ IDEAAndroid Studio、Project Kenai、NetBeans 用 Android プラグイン Androidのみ、Dalvik VMのため、2009年3月 apk 無料、IntelliJ IDEAコミュニティエディション - 無料
ブラックベリージャワIDEに統合されたデバッガ はい Eclipse、BlackBerry JDE RIM APIのため、BlackBerryのみ alx、タラ 無料
iOS SDKObjective-CSwiftXcode IDEに統合された LLDBデバッガーiPhone SDK にバンドルされ、Xcode IDE に統合されています エックスコードiPhoneiPadiPod TouchApp Store経由のみで利用可能。Apple Inc.による審査と承認が必要です。AppleのツールはMacでの開発に無料で利用できます。アプリケーションはシミュレーターまたはデバイス上で実行できます。一部の高度な機能には有料の開発者アカウントが必要です。[ 5 ]
iOS SDKオブジェクトパスカルXcode IDEに統合されたデバッガー Delphi XE2 Professional 以降に含まれています エンバカデロデルファイ XE2iPhoneiPadiPod TouchApp Store経由のみで利用可能。Apple Inc.による審査と承認が必要です。開発には、WindowsのIDEに加えてIntelベースのMacが必要です。設計はWindowsで、コンパイルとデプロイはMacで行います。シミュレーターによるテストは無料ですが、デバイスへのインストールには開発者署名キーの料金が必要です。

第二当事者

プラットフォームプログラミング言語利用可能な デバッガーエミュレータが利用可能 統合開発環境が利用可能 クロスプラットフォーム展開 インストーラーのパッケージオプション 開発ツールのコスト
Java MEジャワはい 無料エミュレータ、Sun Java Wireless Toolkit、mpowerplayerEclipse、LMA NetBeansモビリティパック はい、多くのVM実装にはデバイス固有のバグがあり、別々のビルドが必要になります。 Jad / Jarパッケージ; Palm OS の PRC ファイル 無料

第三者

プラットフォームプログラミング言語利用可能な デバッガーエミュレータが利用可能 統合開発環境が利用可能 クロスプラットフォーム展開 インストーラーのパッケージオプション 開発ツールのコスト
アクセル HTML5C#はい はい Microsoft Visual Studio (ロックインなし) すべてのプラットフォーム、モバイルアプリはブラウザベースです モバイルウェブ商用ライセンスも利用可能
モバイルトゥゲザーXPath / XQuery、アクションツリービジュアルプログラミング言語 はい はい Windows 専用の IDE のみ Android、iOS、Windows、ブラウザ 各フォーマットのネイティブディストリビューション 無料
Android 用 App Inventorインターフェースデザイナーを備えたビジュアルブロックベースのプログラミング言語 IDEに組み込まれたデバッグツールが限られているはい ブロックプログラミング用の Java Web スタート プログラムに接続できる Web ベースのインターフェース デザイナー Androidデバイス apk 無料
アプリアクセラレーターJavaScriptはい、Titanium Studio で可能です。 エミュレータはネイティブエミュレータを使用して利用可能 EclipseベースのTitanium Studio Android、iPhone、BlackBerry、Tizen、モバイルウェブ 各プラットフォームのネイティブ配信形式 無料のオープンソースApache 2.0ライセンス、商用およびエンタープライズライセンスが利用可能
ベーシック4アンドロイドVisual Basicの類似構文 はい エミュレータはネイティブエミュレータを使用して利用可能 独自のIDE アンドロイド 各プラットフォームのネイティブ配信形式 商用ライセンスも利用可能
コードネームワンジャワはい はい Eclipse、NetBeans Android、iPhone、BlackBerry、Windows Mobile、J2ME 各プラットフォームのネイティブ配信形式 オープンソース GPLv2 およびサブスクリプションベースのビルドサーバー
ソーラー2Dルアはい はい エックスコードAndroid、iOS、ヌークカラー各プラットフォームのネイティブ展開 MITライセンスで無料
ドラゴンRADビジュアルドラッグ&ドロップタイル はい サードパーティのエミュレータを使用する 独自のIDE Android、BlackBerry、Windows Mobile OTA展開無料および商用ライセンスあり
モバイルおよびスマートデバイス向け GeneXus知識表現宣言型プログラミング- 開発を容易にするモデリング、そして各プラットフォーム用のコードが自動的に生成される GeneXus は、事前にテストされたコード ライブラリを利用し、コード生成後にユーザーがコードをデバッグする必要がなくなります。 クラウドで公開し、デバイスでネイティブテスト、エミュレータは不要 独自のIDE AndroidiOS(iPhone、iPad)、BlackBerry OS 、必要に応じて HTML5もサポート各プラットフォームのネイティブ配信形式とクラウドブラウザベース 無料でお試しいただけます。商用ライセンスとエンタープライズライセンスもご利用いただけます。
IBM MobileFirst Studio HTML5CSS3JavaScript、ネイティブ SDK 言語 (ネイティブ Worklight API 付き) はい、モバイルブラウザシミュレーターまたはネイティブSDKデバッガーとの統合 エミュレータはネイティブエミュレータまたはCordovaプラグイン付きブラウザシミュレータを使用して利用できます。 Eclipseプラグイン、Eclipseベースのスタンドアロン AndroidiOSBlackBerry 6、7、10、Windows Phone 7.5 および 8、Windows 8(デスクトップ、タブレット)、Adobe AIR、モバイル Web アプリ、デスクトップ ブラウザーの Web ページ 各プラットフォームのネイティブ配信形式 Eclipse Marketplaceから開発者版を無料で入手、デプロイメント用の商用ライセンスを提供
ラザロオブジェクトパスカルはい、Windows CEのActiveSync経由でIDEでデバッグできます プラットフォームのエミュレータを使用する 統合されたGUIデザイナーとデバッガーを含む Lazarus IDEコンパイル言語はWindows CE、Linux ベースのデバイスで利用可能、 Symbianポートは開発中 各プラットフォームのネイティブ配信形式 無料
ラムダネイティブスキームいいえ いいえ、ただしローカルホストでビルドしてテストすることはできます Eclipse(ソフトウェア)(オプション) すべてのネイティブバイナリ: AndroidiOSBlackBerry 10WindowsOS XLinuxOpenBSDOpenWrt各プラットフォームのネイティブ配信形式 無料(BSDライセンス
ライブコードライブコード はい(IDEに統合) はい(iOSおよびAndroidエミュレーターを使用できます) はい iOS、Android、macOS、Windows、Linux、サーバー、HTML5。インストーラーパッケージ 各プラットフォームのネイティブ配信形式 無料のオープンソース版、商用版、エンタープライズ版が利用可能
マクロメディアフラッシュライトアクションスクリプトはい IDEにバンドル マクロメディア Flash MX2004/8、Eclipse はい SIS-CAB 展開またはOTA -IR-Bluetooth SWF ファイル 様々、無料だがMTASCに制限あり
マーマレードCC++はい はい Visual StudioXcodeすべてネイティブ: Android、BlackBerry、BREW、iOS (iPhone)、Maemo、Palm-webOS、Samsung bada、Symbian、Windows Mobile 6.x およびデスクトップ、OS X 各プラットフォームのネイティブ配信形式 商用ライセンスも利用可能
ミームIDE ミームスクリプト 問題ビューで検証が提供されます はい、Androidエミュレータを統合できます エクリプスRCP AndroidWindows Mobile各プラットフォームのネイティブ配信形式 開発は無料
モナカHTML5CSSJavaScriptはい プレビューはクラウドIDEとローカルツールで利用可能 クラウドベースの IDE、Visual Studio、サードパーティの IDE/エディター Android、iOS、Windows8.1、10 各プラットフォームのネイティブ配信形式 最大3つのプロジェクトまで無料。商用およびエンタープライズライセンスも利用可能
Android用モノC#はい はい Visual Studio 2005 と MonoDevelop アンドロイド プラットフォームのネイティブ配信形式
モノタッチC#はい はい Visual Studio 2005 と MonoDevelop iOS プラットフォームのネイティブ配信形式
モシンクCC++Lua、HTML5、CSS、JavaScript はい はい Eclipse、Visual Studio 2005以降、テキストエディタ付きMoBuild Android、iOS (iPhone)、Java ME、Moblin、Smartphone 2003、Symbian、Windows Mobile (Pocket PC)、Blackberry (実験的) SIS、CAB、JAD、JAR、APK、OTA展開 無料、GPL 2.0、無料インディーサブスクリプション、商用サブスクリプションあり
ネットビーンズC++Javaはい はい Java開発ツール Android (モバイルおよびタブレット)、Nokia (Symbian、Seria 60 – 40 – 80) など 無料
オープンプラグアクションスクリプトXMLはい はい Adobe Flash Builder用の OpenPlug ELIPS プラグインAndroid、iOS(iPad、iPhone、iPod Touch)、Symbian、Windows Mobile 各プラットフォームのネイティブ配信形式 無料および商用ライセンスあり
アウトシステムズOutSystems、CSSJavaScriptはい ブラウザで直接テスト OutSystemsサービススタジオ Android、iOS、Windows Phone 7 該当なし 個人利用の場合は無料のコミュニティエディション、商用利用の場合はサブスクリプションライセンス
PhoneGapApache CordovaHTMLCSSJavaScriptはい はい、多くの機能をブラウザで直接テストできます。iOSとAndroidのネイティブエミュレーターを実行することも可能です。 はい、 Ionic StudioAppery.ioのようなCordovaベースのツール用のIDEは数多く存在します。iPhone、Android、Tizen、Windows Phone、BlackBerry、Symbian、Palm、Bada 各プラットフォームのネイティブ配信形式 アパッチ2
Qt SDK C++QMLはい はい Qt クリエイターAndroid (テクノロジー プレビュー)、iOS (テクノロジー プレビュー)、SymbianMaemoMeeGoLinuxWindowsOS X各プラットフォームのネイティブ配信形式 無料および商用ライセンスが利用可能
ロモビルインタプリタを介してネイティブアプリケーションにコンパイルされた HTMLインターフェース機能を備えたRubyはい 該当なし。アプリケーションは Win32 ランナー、またはサポートされているプラ​​ットフォームのデバイス エミュレーターで実行できます。 XcodeまたはEclipse、オンデマンドRhoHubバージョンには完全なIDEが含まれています はい、Android 1.6+、iOS 3.0+(iPhone、iPad)、Windows Mobile 6.1 Professional、Windows Mobile 6.0 Standard、BlackBerry 4.6、4.7、5.0、6.0(4.2および4.5はサポートされていますが、これらのデバイスではデータベースアクセスが非常に遅くなります)、Symbianをサポートしています。 OTA展開、App Store 経由の iOS、.SIS、.CAB、.APK、.COD RhodesはMITライセンスに基づく無料オープンソースです。RhoSyncはGPLまたは商用ライセンスに基づき、商用サポートもご利用いただけます。RhoHubのサブスクリプション
ルビーモーションルビーはい はい 任意のテキストエディタ。IDEとしては、RubyMineアンドロイド、iOS プラットフォームのネイティブ配信形式 RubyMotion は商用製品です。
煎茶タッチHTMLCSSJavaScriptはい はい Sencha Architect 2 Android、iOS(iPhone、iPad、iPod touch)、Kindle、BlackBerry、Bada Web配信、または各プラットフォームのネイティブシェルを介したハイブリッド配信 GPLv3、商用は無料、OEMおよび組み込みシステムは有料
スマートフェイスJavaScript コード エディターを備えたWYSIWYGデザイン エディター はい はい Smartface IDE と SDK はい、Android、iOS(iPhone、iPad、iPod touch)、Kindle、Gear、Google Glass 各プラットフォームのネイティブ配信形式 コミュニティライセンスと商用ライセンスが利用可能
ステンシルScratchObjective-Cをベースにしたドラッグアンドドロップエディタはい はい エックスコードiOS(iPad、iPhone、iPod Touch) 各プラットフォームのネイティブ配信形式 無料および商用開発ライセンス
Telerikプラットフォームと AppBuilder HTML5、CSS、Javascript はい ブラウザまたはデバイスで直接テスト ブラウザクライアント、デスクトップクライアント、Visual Studio、Sublime Text、またはコマンドラインインターフェース (CLI) Android、iOS、Windows Phone 各プラットフォームのネイティブ配信形式 無料でお試しいただけます。商用ライセンスとエンタープライズライセンスもご利用いただけます。
団結C#JavaScriptBoo、その他の.NETベースの言語 はい アプリがデバイスにアップロードされる前にデバイスの操作をシミュレートするために使用されるリモート。 Unity エディターは、Visual Studio および MonoDevelop でも動作します。 Android、iOS(iPhone、iPad)、PC、Mac、デスクトップブラウザ、Xbox 360、PS3、Wii。BlackBerry Playbook、Nokia Symbian、Roku 2など、当社のUnionプログラムを通じてご利用いただけます。 各プラットフォームのネイティブ配信形式 無料および商用開発ライセンス。
ベリボAppStudio WYSIWYG、グラフィカルドラッグアンドドロップ、JavaScript.NETベースの言語。Appery.ioに置き換えられました。 はい ブラウザまたはデバイスで直接テスト 独自のデザインスタジオ Android、iOS、ブラックベリー 各プラットフォームのネイティブ配信形式 無料の開発ライセンス、CPU ごとの展開ライセンス
ビジアプリWYSIWYG、グラフィカルなドラッグアンドドロップ はい ブラウザまたはデバイスで直接テスト オンラインデザインスタジオ Android、iOS、Windows Phone が予定されています 各プラットフォームのネイティブ配信形式 デザイン、テスト、デモ、アップデート、アプリは無料。公開には料金がかかります。
V-PlayエンジンObjective-CC++JavaScriptQMLJavaはい はい Qt クリエイターすべてのプラットフォーム 各プラットフォームのネイティブ配信形式 無料、インディー、エンタープライズライセンスが利用可能
ワカンダ HTML5JavaScriptはい はい はい、ワカンダスタジオ Android、iOS、Windows 10(近日対応予定)、ブラウザベースのアプリ apk オープンソースと商用ライセンスが利用可能
ザマリンC# はい はい Xamarin Studio(Macのみ、非推奨)、Visual Studio(Windowsのみ)、Visual Studio for Mac(Macのみ、Xamarin Studioに代わる)[ 6 ] [ 7 ]Android、iOS、Windows Phone、Windowsストアアプリ 各プラットフォームのネイティブディストリビューション 無料のコミュニティ エディション、Microsoft MSDN ライセンスに含まれるプロ エディション
ゾジョXojo(VBに似ている) はい はい Xojo IDE iOS、モバイルウェブアプリ iOSアプリはネイティブiPad 時間制限のない無料トライアル、商用ライセンスも利用可能

バックエンドサーバー

バックエンド ツールは、フロントエンド ツールが終了したところから処理を開始し、集中管理および制御される再利用可能な一連のサービスを提供します。これらのサービスには次の機能があります。

  • バックエンドシステムとの統合
  • ユーザー認証・承認
  • データサービス
  • 再利用可能なビジネスロジック

利用可能なツールは次のとおりです:

プラットフォームプログラミング言語統合開発環境が利用可能 クロスプラットフォーム展開 展開オプション 開発ツールのコスト
Altova MobileTogether サーバー ブラウザベースのインターフェース 独自のIDE サーバーはWindowsLinuxmacOSで利用可能です。Android 、iOSWindows 8Windows 10、Windows PhoneHTML5ブラウザベースのクライアント を搭載したモバイルデバイスをサポートしますオンプレミス、クラウド、ハイブリッド 開発ツールは無料ですが、展開には商用ライセンスが必要です。
Globo plcによる GO!AppZoneJavaScript . カスタム統合コネクタ/サーバー側ロジック: C#、VB.NET はい、GO!AppZone Studio AndroidBlackBerryiOSWindows Phone、8.x、RTオンプレミス、クラウド、ハイブリッド 開発ツールは無料ですが、導入には商用ライセンスまたはサブスクリプションが必要です。
IBM MobileFirst サーバー HTML5CSS3JavaScript、ネイティブ SDK 言語 (ネイティブ Worklight API 付き) Eclipseプラグイン、Eclipseベースのスタンドアロン AndroidiOSBlackBerry 6、7、10、Windows Phone 7.5 および 8、Windows 8(デスクトップ、タブレット)、Adobe AIR、モバイル Web アプリ、デスクトップ ブラウザーの Web ページ オンプレミス Eclipse Marketplaceから開発者版を無料で入手、デプロイメント用の商用ライセンスを提供
メティスモジャワ日食Android、iOS (iPhone、iPad)、Java ME、BREW、BlackBerry、Nintendo DS、Palm/webOS、Sony PSP、Samsung bada、Symbian、Windows Mobile、Windows Phone 7、Windows Desktop、OS X オンプレミス 商用ライセンスも利用可能
ワカンダ JavaScriptWakanda Studioを使用する Android、iOS(iPhone、iPad)、Windows Phone 10(近日公開)、HTML5アプリ オンプレミスまたはクラウド コミュニティ版と商用版
ベリボ・アクラ ジャワ任意のフロントエンドIDEを使用する Android、iOS(iPhone、iPad)、Windows Phone7 オンプレミス、クラウド、ハイブリッド 無料開発ライセンス。CPUごとのデプロイメントライセンス。Appery.ioに置き換えられました。
WebORB 統合サーバー C#VB.NETJavaPHP、ActionScript、JavaScriptObjective-C

XML

Eclipse、Visual Studio、intelliJ IDEA、Amethyst IDE で動作します Android、iOS(iPhone、iPad)、BlackBerry Playbook、Windows Phone 7 オンプレミス 無料の開発ライセンス、無料および商用展開ライセンス

セキュリティアドオンレイヤー

BYOD(個人所有デバイスの持ち込み)が多くの企業で標準となりつつある 中、IT部門は既存のアプリ、スマートフォン、プラットフォームコンポーネントを補完する、一時的な戦術的なソリューションを必要とすることがよくあります。主な機能は以下のとおりです。

  • セキュリティのためのアプリラッピング
  • データ暗号化
  • クライアントのアクション
  • 報告と統計

システムソフトウェア

モバイル アプリを開発するための機能的なプラットフォームを実現するには、多くのシステム レベルのコンポーネントが必要です。

プラットフォームプログラミング言語利用可能な デバッガーエミュレータが利用可能 統合開発環境が利用可能 クロスプラットフォーム展開 インストーラーのパッケージオプション 開発ツールのコスト
アドビエアアクションスクリプトHTMLCSSJavaScriptはい はい Flash BuilderFlash ProfessionalIntelliJ IDEAAndroid、iOS(iPhone、iPad、iPod touch)、BlackBerry 各プラットフォームのネイティブ配信形式 Flash BuilderFlash ProfessionalIntelliJ IDEA - 商用ライセンスあり Adob​​e AIR SDK (コマンドラインツール) - 無料
ブリューC ; APIはC++スタイルのインターフェースでCで提供される ネイティブARMターゲットコード用のデバッガーサポート。Visual Studioを使用してx86テストコードをデバッグできます。 ターゲットARMコード用のエミュレータはないが、x86テストコード用のシミュレータはある Visual Studio 6.0、Visual Studio 2003 .NET、Visual Studio 2005 端末で利用可能な特定のBREWバージョン用にコンパイルする OTABrew App Certification に通常必要な関連開発費 - 認定開発者になるための VeriSign 年会費。BREW 用 Realview ARM コンパイラ(無料の GNU C/C++ も利用可能ですが、機能とサポートが制限されています)。アプリケーション配布のための TRUE BREW テスト費用。
Firefox OSHTML5CSSJavaScriptはい いいえ、しかしシミュレーターは利用可能です。 Firefoxブラウザ、Firebug他のプラットフォーム上のWebブラウザ Firefox Marketplace、Web URL 開発にはMozilla Firefoxとシミュレータアドオンが 必要です
.NET コンパクト フレームワークC#VB.NETBasic4ppcはい 無料のエミュレータ、ソースコードも利用可能、IDEにもバンドルされています Visual Studio 2008、2005、2003Basic4ppc IDE Windows Mobile、Windows CE、Symbianベースのデバイス(サードパーティ製ツール経由) OTA展開、CABファイル、ActiveSync ほとんどのツールは無料ですが、ビジュアルデザイナーにはVisual Studioの商用版が必要です。
オープンFLHaxe(ActionscriptやJavaに似ている) はい はい IntelliJ IDEA、FlashDevelop Android、iOS(iPhone、iPad、iPod touch)、BlackBerry Playbook、WebOS、HTML5、Flash、Windows(exe)、Linux 各プラットフォームのネイティブ配信形式 無料
パームOSCC++パスカルはい OS 1.0~4.1: PalmSource (Access) が提供する無料エミュレータ。OS 5.0: Palm (palmOne) が提供する 5.4 デバイス固有のシミュレータ。 Palm OS 開発システム (Eclipse)、CodeWarrior、PocketStudio、HB++、Satellite Forms Palm OSハンドヘルド、または StyleTap エミュレータを搭載した Windows Mobile PRCファイル、PalmSource インストーラ (.psi) 無料(Palm OS用のPOSEまたはGCC)、商用(CodeWarrior)、またはさまざまな商用の迅速な開発フレームワーク
パイソンパイソン はい Nokiaエミュレータのアドオン Eclipse用プラグインを含むいくつかインタープリタ言語は、 Nokia Series60 (およびデスクトップ)でのみネイティブに利用可能ですが、Palm OS を含む他のモバイル プラットフォームへの移植版も存在します。 py2sisを使用したSISデプロイメントまたはPythonランタイムを使用可能 無料
シンビアンC++はい 無料エミュレータ 多くの選択肢ターゲットごとにコンパイル SISの展開 商用および無料ツールが利用可能
タイゼンWebベース: HTML5CSSJavaScriptネイティブ: CC++はい 無料エミュレータ Tizen SDK ウェブブラウザで利用可能なウェブベースのアプリ TizenはApp Store、Web URLから 開発にはWindows、OS X、またはUbuntuデスクトップが必要です
UbuntuタッチWebベース: HTML5CSSJavaScriptネイティブ: QMLCC++はい はい Ubuntu SDK HTML5 アプリは Web ブラウザで利用できます。 App Store、Web URL経由のUbuntu Touch 開発にはUbuntu Desktop 12.04以降が必要です(無料)
ウェブOSPDK 経由の JavaScriptCSSHTMLCC++はい 無料エミュレータ 日食webOS、Palmのみ OTA展開、App Store経由のwebOS、Web URL、Precentral、.ipk 無料
ウィンドウズモバイルCC++はい 無料のエミュレータ(ソースコードも利用可能)、IDEにもバンドルされています Visual Studio 2010、2008、2005、eMbedded VC++(無料)、Satellite Forms Windows Mobile、Windows CE OTA展開、CABファイル、ActiveSync 無料のコマンドライン ツールまたは eMbedded VC++、または Visual Studio (Standard エディション以上)
ウィンドウズフォンC#Visual BasicCC++はい IDEにもバンドルされた無料エミュレータ Visual Studio 2012Visual Studio 2010ウィンドウズフォンOTA展開、XAPファイル

開発プラットフォームの選択基準には、通常、対象となるモバイルプラットフォーム、既存のインフラストラクチャ、開発スキルが含まれます。クロスプラットフォーム開発で複数のプラットフォームを対象とする場合は、ツールがユーザーエクスペリエンスに与える影響も考慮することが重要です。モバイルアプリの研究では、アプリケーションのパフォーマンスとユーザー満足度の間には強い相関関係があることが示されているため、パフォーマンスも重要な基準の一つです。パフォーマンスなどの基準に加えて、テクノロジの可用性やプロジェクトの要件も、ネイティブ環境とクロスプラットフォーム環境の間で開発が左右される要因となります。ネイティブ環境とクロスプラットフォーム環境の選択を支援するために、いくつかのガイドラインとベンチマークが公開されています。通常、クロスプラットフォーム環境は、ネイティブコンテナを活用し、ユーザーインターフェースにはHTML、CSS、JavaScriptを使用することで、複数のプラットフォーム間で再利用可能です。一方、ネイティブ環境は、それぞれの環境ごとに1つのプラットフォームを対象としています。例えば、Android開発はEclipse IDEでAndroid Developer Tools (ADT)プラグインを使用して行われ、Apple iOS開発はXcode IDEでObjective-CやSwiftを使用して行われ、WindowsとBlackBerryはそれぞれ独自の開発環境を備えています。

モバイルアプリのテスト

モバイルアプリケーションは、まず開発環境内でエミュレータを用いてテストされ、その後、フィールドテストにかけられます。エミュレータは、開発者が物理的にアクセスできない可能性のある携帯電話上でアプリケーションを低コストでテストする方法を提供します。以下は、主要なモバイルオペレーティングシステム上でアプリケーションをテストするために使用されているツールの例です。

ツールには以下が含まれます

  • Eggplant Functional – あらゆるオペレーティングシステムとデバイスに対応したモバイルアプリ用の GUI ベースの自動テストツール
  • Ranorex – モバイル、Web、デスクトップアプリ向けのテスト自動化ツール
  • Testdroid – モバイルアプリとウェブアプリをテストするための実際のモバイルデバイスとテスト自動化ツール

設計原則

2020年のアプリケーション業界レポートによると、モバイルアプリユーザーの46%が、パフォーマンスの低さを理由にアプリの使用を中止したりアンインストールしたりしたと述べています。[ 9 ]デザインの専門家は、成功する効果的なモバイルアプリを作成するために、次のデザイン原則を提唱しています。

画面をすっきり整理– インタラクションを素早くシンプルに保ち、ユーザーが複数の機能やタスクに圧倒されることなく、特定のタスクに集中できるようにします。デザインの専門家は、1画面につき1つのタスクを強く推奨しており、長いフォームを複数のページに分割し、新しいタスクやフィールドを段階的に表示することで、画面の乱雑さを最小限に抑えることを推奨しています。[ 10 ]

認知負荷の軽減– アプリの使用を可能な限りシームレスにし、アプリ内での自然な流れを維持します。デザインの専門家は、認知負荷を軽減するために、オートコンプリートスペルチェック予測入力支援、ドロップダウンメニューを組み込むことを推奨しています。また、デザインの専門家は、ユーザーが一時的にアプリを離れて再びログインした際に、アプリの状態を保持し、中断したところから使い続けられるようにすることを推奨しています。[ 10 ] [ 11 ]

シンプルなナビゲーション– 約11%の人が、複雑なインターフェースのためにアプリをアンインストールしています。[ 9 ]デザインの専門家は、ユーザーが頻繁に使用する画面や優先度の高い画面に瞬時に移動できるように、アプリ内でナビゲーションバーを目立つように表示することが最も重要だと述べています。彼らは、メニューを開く、設定を変更する、画面を戻る、ページ内を検索するなどのアクションをユーザーが簡単に実行できるように、デバイスのオペレーティングシステムに固有の認識可能なアイコンを使用することを推奨しています。彼らによると、ユーザーがアプリをナビゲートする際に混乱してはならないため、整然とした明確で論理的なナビゲーションフローが、アプリでのエンゲージメントと発見を促進します。[ 10 ] [ 11 ]

通知– 頻繁なプッシュ通知が原因で、約19%のユーザーがアプリをアンインストールするという報告があります。[ 9 ]デザインの専門家によると、通知は慎重に計画して送信する必要があります。専門家は、通知はユーザーのタイムゾーンで最も都合の良い時間に送信し、メッセージはパーソナライズしてユーザーにとって大きな価値をもたらすべきだと述べています。[ 10 ]

スピード感– 約19%の人がハングアップの問題でアプリをアンインストールしています。[ 9 ]デザインの専門家は、ユーザーがコンテンツを待たずに済むように、アプリが高速で応答性が高いことが重要だと述べています。開発者はコンテンツをより早く提供したり、進捗状況を認識させたりすべきだと彼らは述べています。専門家が提案するアプローチには、アプリのレイアウトをコンテンツがグレー表示されている状態で表示するスケルトンスクリーンの使用、プログレスバーや読み込みスピナーの表示、バックグラウンドでタスクが実行され、ユーザーが要求したときにすぐにコンテンツを表示する、ページの読み込みを待っている間にユーザーにタスクやコンテンツを提供する、などがあります。[ 10 ]

ユーザビリティ– モバイルユーザーの約85%は片手で携帯電話を使用しているため[ 9 ]、デザインの専門家は、トップレベルのメニュー、頻繁に使用するコントロール、一般的なアクション項目がユーザーの親指の届く範囲にあることが重要であると述べています。また、読みやすさの重要性も強調しており、ユーザーが通常の読書距離でズームインせずに読めるように、テキストサイズは少なくとも11ポイントのフォントにすることが推奨されています。[ 10 ]アプリ画面のヘッダーとタイトルは、オペレーティングシステムiOSの場合はSan Francisco 17pt、Androidの場合はRoboto 16spにすることが推奨されています。[ 11 ]また、専門家は、テキストと背景色のコントラスト比は最低4.5:1である必要があると述べています。 [ 10 ]デザインの専門家は、開発者が障害者を含むすべてのユーザーがアプリにアクセスできるようにすることを強く推奨しているため、モバイルアプリに音声ナビゲーションスクリーンリーダーの互換性、ユーザーインターフェイスの適応性などの機能を提案しています。 [ 11 ]

特許

新しい携帯電話アプリに関する特許出願が多数出願されています。その多くは、ビジネス手法、データベース管理、データ転送、オペレーターインターフェースといった技術分野です。[ 12 ]

参照

参考文献

  1. ^ 「モバイルアプリケーション開発入門」 IBM.com 20236月24日閲覧
  2. ^ 「モバイルアプリの設計時に考慮すべき重要な側面」 GlobalLogic イギリス、2016年10月3日。 2023年6月24日閲覧
  3. ^ 「モバイルアプリ(モバイルアプリケーション)とは? – TechTargetの定義」WhatIs.com . 2023年6月24日閲覧
  4. ^アトキンソン、ロバート・D. (2017年10月). 「ヨーロッパのアプリ経済:主要国と都市、2017年」(PDF) .プログレッシブ・ポリシー・インスティテュート. 2024年10月3日閲覧
  5. ^ 「デバイス上でアプリを起動する」 Apple Developer 2016年4月30日閲覧
  6. ^ Linev, Roman (2016年11月14日). 「Microsoft、Xamarin StudioをVisual Studio for Macとしてブランド変更」 . Winaero . 2023年3月5日閲覧
  7. ^ Foley, Mary Jo (2017年5月10日). 「Microsoft、Visual Studio for Macを一般提供開始」 . ZDNet . 2023年4月2日閲覧。Microsoftは、Xamarin Studio for the Macのブランド名を変更したVisual Studio for Macを一般提供開始した。
  8. ^ 「MobiOne Developer 1.0 M4: App Store対応のモバイルWebアプリケーションを作成し、Windowsで真のデバイス動作を体験」 PRWeb 2009年10月8日時点のオリジナルよりアーカイブ。 2021年5月31日閲覧
  9. ^ a b c d e「アプリの統計、使用状況、ダウンロード数(2020年レポート)」 SaaS Scout(旧SoftwareFindr) 2020年1月6日。 2024年2月20日閲覧
  10. ^ a b c d e f g「15のモバイルアプリ設計ベストプラクティス」。ThoughtSpot 2024年2月20日閲覧
  11. ^ a b c d Cordini, Marcelo (2021年1月6日). 「最高のモバイルアプリデザイン:例」 . Qubika . 2024年2月20日閲覧
  12. ^ Nowotarski他「特許クラスを選択的にターゲットにすることで許可率を高める」IPwatchdog、2011年4月6日