JREのJavaとAndroidのJavaの違いは何ですか?


13

私はこのゲーム開発のすべてに慣れていないので、始めるのに最適な方法だと言われたので、Javaを学び始めています。後でアンドロイド市場向けのゲームを作成し、皆さんから良い見解を得たいと思うので、私が何を扱っているかを正確に知っています。

Androidの開発にはさまざまなアーキテクチャがあり、他に何もありません(それはいい方法ですか?)

ありがとう!


4
それが価値のあるものとして、Androidアプリケーションは通常Javaで書かれています。2つの違いは、「Android」はオペレーティングシステムであり、「Java」はプログラミング言語であるということです。それらは異なる(重複しない)目的を果たします。
ダッシュトムバング

OPの質問のタイトルを明確にしました。
エンジニア

回答:


13

Androidアプリケーションを作成するには、JavaとAndroidが提供する拡張ライブラリを使用します。これらは、Java言語の拡張機能ではありません。Androidに同梱されているライブラリは、携帯電話でやりたい一般的なことを実現するのに役立ちます。

たとえば、Blackberry(別のJavaベースのモバイルOS)は、選択言語としてJavaを使用し、Research In Motionは、RIMパッケージのライブラリセットを提供します。これにより、携帯電話でよく行うことを抽象化できます。

純粋なJavaを使用できますが、ほとんどの場合、RIMが提供するRIMライブラリーを使用します。

プログラミングにまったく慣れていない場合は、まずクラス、メソッド、オブジェクト指向プログラミングなどの優れたJavaの原則を学ぶことをお勧めします。次に、Googleが提供するAndroid APIを学習します。最初にAndroidを学習すると、すぐに混乱してしまい、優れたプログラミングプラクティスに従わなくなります。

Head First Javaの本から始めることをお勧めします


4

Androidは、独自のJavaのような実装を使用します。Java構文コードを記述し、多くのJava APIを使用できますが、多くの違いがあります。

  • Androidアプリケーションには特別なライフサイクルがあります:
    • 主な機能なし
    • アプリケーションに、オーバーライドする必要があるonCreate、onResume、onPause、onDestroy関数を含むアクティビティが含まれている
  • コードは(Javaバイトコードではなく)Dalvikオペコードにコンパイルされます。
  • 多くのAPIは類似していますが、すべてのJ2SE APIがあるわけではありません。開発者サイトで確認する必要があります
  • 多くのAPIはAndroid(連絡先、電源管理、グラフィックスなど)に限定されています。
  • IHMはAndroid専用です(Swing、JavaFXなどはありません)。GUIを宣言するにはXMLを使用する必要があります。
  • Java jar(互換性のあるAPIのみを使用する場合)を使用できますが、それらはdalvikに変換されます。

だから、それは新しいプラットフォームのようなものです。しかし、Javaを知っていれば、Androidでの開発は非常に簡単です。SDKをダウンロードし、提供されているサンプルを試して、それらをカスタマイズしてみてください。EclipseおよびIdeaとして優れたIDEを使用できます(AndroidプラグインはIdea 10 Communityエディションで提供されます)。

C / C ++オタクの場合、NDK(Native Development Kit)を使用できますが、JavaブートストラップコードとJNIの知識が必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.