Seberapa berbeda Java untuk JRE vs Java untuk Android?

13

Saya baru mengenal semua pengembangan game ini, dan saya mulai belajar java karena saya diberitahu itu cara yang bagus untuk memulai. Saya ingin nanti membuat game untuk pasar android, dan ingin mendapatkan pandangan yang baik dari kalian, jadi saya tahu persis apa yang saya hadapi.

SAYA SANGAT menyadari bahwa pengembangan Android memiliki arsitektur yang berbeda dan yang lainnya (itu cara yang baik untuk mengatakannya?)

Terima kasih!

Tanpa sayap
sumber
4
Untuk apa nilainya, aplikasi Android biasanya ditulis dalam Java. Perbedaan antara keduanya adalah bahwa "Android" adalah sistem operasi dan "Java" adalah bahasa pemrograman. Mereka melayani tujuan yang berbeda (tidak tumpang tindih).
dash-tom-bang
Mengklarifikasi judul pertanyaan OP.
Insinyur

Jawaban:

13

Untuk membuat aplikasi Android Anda menggunakan Java dan perpustakaan ekstensi yang disediakan Android. Ini bukan ekstensi dalam cara Bahasa Jawa; Maksud saya perpustakaan yang dikirim dengan Android untuk membantu Anda mencapai hal-hal umum yang ingin Anda lakukan pada ponsel.

Sebagai contoh, Blackberry ( OS mobile berbasis Java lainnya ) menggunakan Java sebagai bahasa pilihan, dan Research In Motion menyediakan satu set perpustakaan dalam paket RIM yang membantu saya mengabstraksikan hal-hal yang biasa saya lakukan di ponsel.

Anda dapat menggunakan Java murni tetapi sebagian besar waktu Anda ingin menggunakan pustaka RIM yang disediakan oleh RIM.

Jika Anda benar-benar baru dalam pemrograman, saya akan merekomendasikan terlebih dahulu mempelajari prinsip-prinsip Java yang baik - kelas, metode, pemrograman berorientasi objek, dll; kemudian mempelajari API Android yang disediakan oleh Google. Jika Anda mempelajari Android terlebih dahulu, Anda akan cepat bingung dan tidak mengikuti praktik pemrograman yang baik.

Saya sarankan memulai dengan buku Head First Java .


sumber
4

Android menggunakan implementasi seperti Java-nya sendiri. Anda menulis kode sintaksis Java dan dapat menggunakan Banyak API Java, tetapi ada banyak perbedaan:

  • Aplikasi Android memiliki Siklus Hidup khusus:
    • tidak ada fungsi utama
    • aplikasi Anda berisi Aktivitas dengan fungsi onCreate, onResume, onPause, onDestroy yang harus Anda timpa
  • Kode dikompilasi menjadi Dalvik opcodes (bukan kode byte java);
  • Banyak API adalah serupa tetapi Anda tidak memiliki semua API J2SE. Anda harus memeriksa situs pengembang ;
  • Banyak API terbatas pada Android (Kontak, Manajemen Daya, Grafik ...);
  • IHM adalah android saja (tanpa Swing, tanpa JavaFX ...). Anda harus menggunakan XML untuk menyatakan Anda GUI;
  • Anda bisa menggunakan java jars (jika mereka hanya menggunakan API yang kompatibel) tetapi mereka dikonversi menjadi dalvik.

Jadi, ini seperti platform baru; tetapi, jika Anda tahu Java, sangat mudah dikembangkan di Android. Unduh SDK dan coba mainkan dengan sampel yang disediakan dan sesuaikan. Anda dapat menggunakan IDE yang baik sebagai Eclipse dan Idea (plugin Android akan tiba dalam edisi Idea 10 Komunitas).

Untuk C / C ++ geeks, Anda dapat menggunakan NDK (Native Development Kit) tetapi Anda memerlukan beberapa kode bootstrap Java dan pengetahuan JNI.

Ellis
sumber