HTML、CSS、JavaScriptでコード化されたWebアプリがあります。このアプリでの私の目標は、最終的にはあらゆる種類のモバイルデバイスで動作させ、デスクトップで使用できるようにWebアプリを維持することです。
このアプリは基本的に、特定のデバイスの追跡を可能にするGoogleマップ、SQL、POIタイプのアプリケーションです。
私は現在、PhoneGap、Bootstrap、およびJQuery Mobileの調査を行っており、どの方向に進むべきかについて専門家のアドバイスを探していました。
理想的には、それらすべてを支配する1つのアプリで、表示されているデバイスに合わせて最適化するのが最も便利です。
私はこれらのテクノロジーのそれぞれを使用するための簡潔な賛否両論のリストを本当に感謝します、そして私は他の提案を受け入れます。
Bootstrap、jQuery Mobile、PhoneGapはすべて異なる問題を解決します。
BootstrapはレスポンシブWebフレームワークです。その目標は、すべてのレスポンシブWebフレームワークと同様に、ビューレイヤーを表示を行うデバイスに適合させることです。携帯電話、タブレット、PCなどにさまざまなプレゼンテーションを提供します。
jQueryMobileは、JavaScript/HTML/CSSを完全に使用して記述されたクロスプラットフォームのモバイルアプリケーションを提供することを目的としたモバイルWebアプリケーションフレームワークです。
PhoneGapは基本的に、JavaScriptを使用してネイティブデバイスAPI(カメラ、Bluetoothなど)にアクセスできるようにする既存のWebアプリケーションのラッパー(ブラウザー)です。
私自身の個人的な経験から、それは決して包括的なガイドではありません:
ブートストラップ
jQuery Mobile
PhoneGap
些細なアプリケーションの場合、クロスプラットフォーム開発を確実に行うことをお勧めします。比較的迅速かつ簡単に導入できます。そうは言っても、アプリケーションの複雑さを増し始めたら、私の経験は常にネイティブになるか、少なくともいくつかのハイブリッドソリューションになります。ネイティブアプリケーションは、現時点でより良い「感触」を持っています。さらに重要なことに、ネイティブに移行すると、プラットフォームの設計内でアプリケーションを構築できます。クロスプラットフォームは素晴らしいですが、ほとんどのAndroidユーザーは自分のアプリをiOSアプリのように見せたくないし、その逆もありません。複数のプラットフォーム用のネイティブアプリケーションの構築には時間がかかるかもしれませんが、あなたは最終的には、ユーザーにより良いエクスペリエンスを提供します。
ちょうど私の2セント。
それはあなたが持っているターゲットシステムの数とリソースの豊富さに依存しますか?
IOSのみのタイプのデバイスをターゲットにしている場合は、ネイティブルートを使用するか、UIWebViewを組み合わせたネイティブルートを使用します。ただし、iOS/Android/Windows、Blackberryなどの複数のデバイスがある場合は、Cordova/PhoneGapを使用します。これらのシステムとのシームレスな統合は素晴らしいです、そしてあなたは単一のコードベースを維持します。
ただし、Cordova/PhoneGapルートを使用する場合、ネイティブデバイスの機能は直接チャネル化されず、コードベースのオーバーヘッドは言うまでもなく、さまざまな遷移の間にラグがあります。
無制限のリソースと時間の制約、および従業員のリソースがある場合は、WebKitをプライマリインターフェイスコントロールとして使用して、ネイティブiOSとネイティブAndroidを開発し、利用可能なそれぞれのオペレーティングシステムの機能を利用します。
Androidの活用という点では、Cordovaと言わざるを得ませんが、iOSの組み込み機能は大幅に改善されています。彼らは、マルチメディアコンポーネント、ジャイロスコープ、MAPキット、加速度計、およびそれぞれのデバイスのGPSを利用して、リストを作成しました。そして私が理解しているように、彼らは拡大し続けています。単一のコードベースは素晴らしいです!しかし、それはあなたがタイトなリソースを持っている場合です。多数の専門分野を持つ多数のプログラマーがいる大企業の場合は、ネイティブ100%を使用してください。
それは本当にあなたが何をターゲットにしているのかに依存します。
個人的には、ネイティブiOSとAndroidアプリを作成する方法を開発者に提供するPhoneGapが好きです。しかし、JQuerymobileも非常に印象的です。開発者はこれら両方のテクノロジーを使用して印象的な製品を作成しました。
それにもかかわらず、JQuery Mobileは、モバイルデバイス用に設計されたWebページを作成します。 PhoneGapはアプリを作成します(IOS、Android、BlackBerryなどのほぼ6つのプラットフォーム用)。