更新(明確にし、あいまいさを減らすため):
私はAndroidアプリをいじり始めます。私はNDKを使用してC ++で書くことを計画していましたが(C ++の経験が豊富で、Javaよりも好むため)、AndroidNDKページで次のことに遭遇しました。
NDKは、アプリに不可欠な場合にのみ使用する必要があります。単にC / C ++でプログラミングすることを好むからではありません。
仕事に合っている限り、好きな言語を使うべきだという印象を受けました。Androidの開発にC / C ++を使用しないことが強く推奨される理由を誰かが説明できますか?
元の:
モバイルアプリ、特に現在の電話のOSであるAndroidをいじくり回し始めます。アプリを、C ++(または少なくともコア、次にJavaでラップ)で作成するのが許容できるオプションかどうか疑問に思いました。
ある程度の経歴を持っていますが、私はコンピュータサイエンス専攻で、3つのC ++コース(初級、中級、OOP、春にSTLコースを受講)と1つのJavaコース(中級)を受講しています。このため、私はC ++に慣れており、JavaよりもC ++を好みます。私はAndroidNDKページで次のことに出くわしました:
Androidでネイティブコードを使用しても、通常、パフォーマンスが目立って向上することはありませんが、アプリの複雑さが常に増します。一般に、NDKは、アプリに不可欠な場合にのみ使用する必要があります。単にC / C ++でプログラミングすることを好むからではありません。
- 慣れ親しんだ言葉だけでなく、仕事に合った言葉を使うべきだという印象を受けました。
- アプリケーションを、JavaではなくC ++をサポートするiOSなどの別のモバイルプラットフォームに移植したい場合があります。
- Javaは高級言語であるため開発が速くなるはずですが、ほとんどすべてを再学習する必要があるため、開発が遅くなるように感じます(この言語のクラスは1つしか受講していないため)
どんなアドバイスでも大歓迎です。
ps:このテーマに関する回答の多くは数年前のものであり、Android2.3以降で完全なネイティブアプリの開発を可能にするNDKについて言及しているフォローアップ回答はほとんどありません。