JRE için Java ile Android için Java arasındaki fark nedir?


13

Tüm bu oyun geliştirmede yeniyim ve java öğrenmeye başladım çünkü bunun harika bir başlangıç ​​yolu olduğu söylendi. Daha sonra android pazarı için oyunlar oluşturmak istiyorum ve sizden iyi bir görünüm elde etmek istiyorum, bu yüzden tam olarak neyle uğraştığımı biliyorum.

Android geliştirmenin farklı mimarileri ve neyin olmadığını anlıyorum (bunu söylemenin iyi bir yolu mu?)

Teşekkürler!


4
Değeri ne olursa olsun, Android uygulamaları genellikle Java ile yazılır. İkisi arasındaki fark, "Android" in bir işletim sistemi ve "Java" nın bir programlama dili olmasıdır. Farklı (örtüşmeyen) amaçlara hizmet ederler.
dash-tom-bang

OP'nin soru başlığı açıklığa kavuşturuldu.
Mühendis

Yanıtlar:


13

Android uygulamaları oluşturmak için Java'yı ve Android'in sağladığı uzantı kitaplıklarını kullanırsınız. Bunlar Java Dili biçimindeki uzantılar değildir; Bir cep telefonunda yapmak istediğiniz ortak şeyleri başarmanıza yardımcı olmak için Android ile birlikte gelen kütüphaneleri kastediyorum.

Örneğin, Blackberry ( başka bir Java tabanlı mobil işletim sistemi ) tercih edilen dil olarak Java'yı kullanır ve Research In Motion, RIM paketinde, telefonumda yaygın olarak yaptığım soyut şeyleri bana yardımcı olan bir dizi kitaplık sağlar.

Saf Java kullanabilirsiniz, ancak çoğu zaman RIM tarafından sağlanan RIM kitaplıklarını kullanmak istersiniz.

Programlamaya tamamen yeniyseniz öncelikle iyi Java ilkelerini öğrenmenizi öneririm - sınıflar, yöntemler, nesne yönelimli programlama, vb. ardından Google tarafından sağlanan Android API'sını öğrenir. Önce Android öğrenirseniz, kafanız karışır ve iyi programlama uygulamalarına uymazsınız.

Head First Java kitabından başlamanızı tavsiye ederim .


4

Android kendi Java benzeri uygulamasını kullanır. Java sözdizimi kodu yazarsınız ve birçok Java API'sini kullanabilirsiniz, ancak birçok fark vardır:

  • Android uygulamalarının özel bir Yaşam Döngüsü vardır:
    • ana işlev yok
    • uygulamalarınız, geçersiz kılmanız gereken onCreate, onResume, onPause, onDestroy işlevlerine sahip Etkinlikler içeriyor
  • Kod Dalvik opcod'larında derlenmiştir (java bayt kodu değil);
  • Birçok API benzerdir, ancak tüm J2SE API'lerine sahip değilsiniz. Geliştirici sitesini kontrol etmelisiniz ;
  • Birçok API Android ile sınırlıdır (Kişiler, Güç Yönetimi, Grafikler ...);
  • IHM android onlys (Swing yok, JavaFX yok ...). GUI'yi bildirmek için XML kullanmalısınız;
  • java kavanozlarını (yalnızca uyumlu API'leri kullanıyorlarsa) kullanabilirsiniz, ancak dalvik'e dönüştürülürler.

Yani yeni bir platform gibi; Ancak, Java'yı biliyorsanız, Android'de geliştirmek çok kolaydır. SDK'yı indirin ve sağlanan örneklerle oynamaya çalışın ve özelleştirin. Eclipse ve Idea olarak iyi IDE kullanabilirsiniz (Android eklentisi Idea 10 Community sürümlerine ulaşacaktır).

C / C ++ meraklıları için NDK (Yerel Geliştirme Kiti) kullanabilirsiniz, ancak bazı Java önyükleme kodu ve JNI bilgilerine ihtiyacınız vardır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.