Android vs Java
Java, dünyadaki en popüler nesne yönelimli programlama dillerinden biridir. Java, yazılım ve web geliştirme için yoğun olarak kullanılır. Son zamanlarda Java, mobil tabanlı uygulamalar için de popüler bir dil haline geldi. Android, Google tarafından geliştirilen cep telefonu tabanlı bir platformdur. Android geliştirme çoğu zaman java tabanlıdır. Java kitaplıklarının büyük bir kısmı Android platformunda mevcuttur, ancak Android'de (kullanıcı arayüzleri vb. için) bulunan birçok başka (java olmayan) kitaplık da vardır.
Java
Java, günümüzde yazılım geliştirmeden web geliştirmeye kadar kullanılan en yaygın kullanılan nesne yönelimli (ve sınıf tabanlı) programlama dillerinden biridir. Genel amaçlı ve eşzamanlı bir programlama dilidir. İlk olarak 1995 yılında Sun Microsystems tarafından geliştirilmiştir. James Gosling, Java programlama dilinin babasıdır. Oracle Corporation artık Java'nın sahibidir (yakın zamanda Sun Microsystems'i satın aldıktan sonra). Java Standard Edition 6, mevcut kararlı sürümüdür. Java, Windows'tan UNIX'e kadar çeşitli platformları destekleyen, kesinlikle yazılan bir dildir. Java, GNU Genel Kamu Lisansı altında lisanslanmıştır. Java'nın sözdizimi, C ve C++'a çok benzer. Java kaynak dosyaları.java uzantısına sahiptir. Java kaynak dosyalarını javac derleyicisini kullanarak derledikten sonra,.class dosyaları (Java bayt kodunu içeren) üretecektir. Bu bayt kodu dosyaları, JVM (Java Sanal Makinesi) kullanılarak yorumlanabilir. JVM herhangi bir platformda çalıştırılabildiğinden, Java'nın çok platformlu (platformlar arası) ve oldukça taşınabilir olduğu söylenir. Tipik olarak, son kullanıcılar Java bayt kodunu (veya web tarayıcılarında Java Uygulamalarını) çalıştırmak için JRE'yi (Java çalışma zamanı Ortamı) kullanır. Yazılım geliştiriciler, uygulama geliştirme için Java Geliştirme Kiti'ni (JDK) kullanır. Bu, bir derleyici ve bir hata ayıklayıcı içeren bir JRE üst kümesidir. Java'nın güzel bir özelliği, artık gerekli olmayan nesnelerin otomatik olarak bellekten kaldırıldığı otomatik çöp toplama özelliğidir.
Android
Android, Google tarafından geliştirilen bir cep telefonu platformudur. Java 5.0 kitaplıklarının büyük bir kısmı Android'de desteklenir. Bu nedenle Android geliştirmenin java tabanlı olduğu söylenebilir. Desteklenmeyen Java kitaplıklarının çoğu, ya daha iyi ikamelere sahiptir (diğer benzer kitaplıklar) ya da basitçe gerekli değildir (örneğin, yazdırma kitaplıkları vb.). Android'de kullanıcı arabirimleri için başka kitaplıklar bulunduğundan java.awt ve java.swing gibi kitaplıklar desteklenmez. Android SDK, org.blues (Bluetooth desteği) gibi diğer üçüncü taraf kitaplıklarını destekler. Sonuç olarak, Android kodu Dalvik işlem kodlarında derlenir. Davilk, güç, CPU ve bellek gibi sınırlı kaynaklara sahip mobil cihazlar için optimize edilmiş özel bir sanal makinedir.
Android ve Java arasındaki fark nedir?
Java bir programlama dilidir, Android ise bir cep telefonu platformudur. Android geliştirme, Java tabanlıdır (çoğu zaman), çünkü Java kitaplıklarının büyük bir kısmı Android'de desteklenir. Ancak, önemli farklılıklar vardır. Java'dan farklı olarak, Android uygulamalarının ana işlevi yoktur. Geliştiriciler tarafından üzerine yazılması gereken onCrete, onResume, onPause ve onDestroy işlevlerine sahiptirler. Java kodu Java bayt kodunu derlerken, Android kodu Davilk işlem kodunu derler.