14

この質問は非常に人気があり、すでに多くの質問が寄せられています。しかし、それらのいくつかは (6 か月前のように) 古いものであり、現在の日付 (2012 年 5 月) については... 今の時点でどちらが優れているかを入力できれば素晴らしいことです!

私は現在いくつかのアプリに取り組んでおり、ここではクロスプラットフォーム機能が重要です。次の機能に HTML5 を使用できるかどうかを知りたいです。

  1. アプリで音楽プレーヤーを作成する (すべてのプレイリストを読み取って再生する必要があります) - HTML5 (または) ネイティブ?

  2. 加速度計の使用- HTML5 (または) ネイティブ ?

  3. カメラの使用法- HTML5 (または) ネイティブ ?

  4. ジェスチャの使用(swype など) - HTML5 (または) ネイティブ ?

  5. マルチタッチ機能とジェスチャー - HTML5 (または) ネイティブ ?

  6. 3D ゲーム(または) 2.5D を物理演算で開発 - HTML5 (または) ネイティブ ? (ここではネイティブが最良の取引かもしれませんが、HTML5 がマルチプラットフォームのゲーム開発でどのように機能するかを知りたいと思っています)

正しい答えでオプションに番号を付けて、ネイティブ/html5を使用しなければならない理由を教えていただければ、それは素晴らしいことです:)


Phone-Gapまた、ネイティブ対応についてはどうお考えですか?

4

2 に答える 2

16

アプリが非常にシンプルでない限り、いわゆるクロスプラットフォームソリューションを避け、プラットフォームごとにネイティブにビルドしてください。そうすれば、あなたは喜ぶでしょう。

そうしないと、一部のデバイスで問題が発生したが他のデバイスでは問題が発生しなかった場合、または一部のデバイスでサポートされていない特定の機能を追加するように要求された場合に、非常に残念になります。

基本的に、クロスプラットフォームソリューションを使用することは、最小公分母/単純なアプリにのみ適しています/私の経験では誤った経済です。

12年以上の商用ソフトウェア開発と両方のアプローチを自分で試した経験に基づく私の謙虚な意見です。

于 2012-05-18T09:28:09.700 に答える
16

アプリで音楽プレーヤーを作成する- 両方。HTML5 は面倒かもしれません。

加速度計の使用- ネイティブ。Html5 はそれをサポートしません

カメラの使用法- ネイティブ。Html5 はそれをサポートしません

ジェスチャーの使用- ネイティブ。Html5 はサポートできますが、外部ライブラリを使用する必要があります

マルチタッチ機能とジェスチャ- 開発を容易にするためにネイティブと言えます

物理演算を使用した 3D ゲーム (または) 2.5D の開発- 両方とも、優れたライブラリが両方のシステムで利用できるようになりました。ただし、HTML5 でやりたいことを行うのは、現時点ではおそらく簡単ではありません。

より一般的に言えば、HTML5 では、システムごとに 1 回だけコードを記述し、それがどこでも同じように機能するかどうかを考えることができます。ネイティブ アプリは、プラットフォームごとに特定の開発が必要であり、さまざまな成熟度の段階で多くのソフトウェアを維持するコストと問題があります。

ただし、特定の機能が必要ない場合は、HTML5 を使用してください。これまでのところコードを書くのはまだ少し面倒ですが、利用可能なライブラリの質と量は日々増えています。CoffeeScriptを使用すると、頭痛の種から解放されます。

アプリケーションがレスポンシブ デザインを念頭に置いて設計されている場合、1 つのアプリケーションでコンピューター、タブレット、およびスマートフォンをサポートすることもできます。

于 2012-05-18T07:37:50.203 に答える