एंड्रॉयड बनाम जावा
Java दुनिया में सबसे लोकप्रिय ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग लैंग्वेज में से एक है। सॉफ्टवेयर और वेब विकास के लिए जावा का भारी उपयोग किया जाता है। हाल ही में, जावा मोबाइल-आधारित अनुप्रयोगों के लिए भी एक लोकप्रिय भाषा बन गई है। Android Google द्वारा विकसित एक मोबाइल फोन आधारित प्लेटफॉर्म है। Android विकास अधिकांश समय जावा-आधारित होता है। जावा लाइब्रेरी का बड़ा हिस्सा एंड्रॉइड प्लेटफॉर्म में उपलब्ध है, लेकिन एंड्रॉइड में (यूजर इंटरफेस आदि के लिए) कई अन्य (गैर-जावा) लाइब्रेरी भी मौजूद हैं।
जावा
जावा आज सबसे व्यापक रूप से उपयोग की जाने वाली ऑब्जेक्ट ओरिएंटेड (और क्लास-आधारित) प्रोग्रामिंग भाषाओं में से एक है, जिसका उपयोग सॉफ्टवेयर विकास से लेकर वेब विकास तक किया जाता है।यह एक सामान्य उद्देश्य और समवर्ती प्रोग्रामिंग भाषा है। इसे मूल रूप से सन माइक्रोसिस्टम्स द्वारा 1995 में विकसित किया गया था। जेम्स गोस्लिंग जावा प्रोग्रामिंग भाषा के जनक हैं। Oracle Corporation अब Java का मालिक है (हाल ही में Sun Microsystems को खरीदने के बाद)। जावा मानक संस्करण 6 इसकी वर्तमान स्थिर रिलीज है। जावा दृढ़ता से टाइप की जाने वाली भाषा है जो विंडोज़ से लेकर यूनिक्स तक कई प्लेटफार्मों का समर्थन करती है। जावा जीएनयू जनरल पब्लिक लाइसेंस के तहत लाइसेंस प्राप्त है। जावा का सिंटैक्स काफी हद तक C और C++ से मिलता-जुलता है। Java स्रोत फ़ाइलों में.java एक्सटेंशन होता है। javac कंपाइलर का उपयोग करके जावा स्रोत फ़ाइलों को संकलित करने के बाद, यह.class फ़ाइलें (जावा बाइटकोड युक्त) उत्पन्न करेगा। इन बाइटकोड फाइलों को जेवीएम (जावा वर्चुअल मशीन) का उपयोग करके व्याख्या किया जा सकता है। चूंकि JVM को किसी भी प्लेटफॉर्म पर चलाया जा सकता है, जावा को मल्टी-प्लेटफॉर्म (क्रॉस-प्लेटफॉर्म) और अत्यधिक पोर्टेबल कहा जाता है। आमतौर पर, अंतिम उपयोगकर्ता जावा बाइटकोड (या वेब ब्राउज़र पर जावा एप्लेट्स) को चलाने के लिए JRE (जावा रनटाइम एनवायरनमेंट) का उपयोग करते हैं। सॉफ्टवेयर डेवलपर अनुप्रयोग विकास के लिए जावा डेवलपमेंट किट (JDK) का उपयोग करते हैं।यह JRE का सुपरसेट है, जिसमें एक कंपाइलर और एक डिबगर शामिल है। जावा की एक अच्छी विशेषता इसका स्वत: कचरा संग्रह है, जहां वस्तुओं की अब आवश्यकता नहीं है, स्मृति से स्वचालित रूप से हटा दिए जाते हैं।
एंड्रॉयड
एंड्रॉयड गूगल द्वारा विकसित एक मोबाइल फोन प्लेटफॉर्म है। जावा 5.0 पुस्तकालयों का एक बड़ा हिस्सा Android में समर्थित है। इसलिए, यह कहा जा सकता है कि Android विकास जावा-आधारित है। कई जावा पुस्तकालय जो समर्थित नहीं हैं, उनके पास या तो बेहतर प्रतिस्थापन (अन्य समान पुस्तकालय) हैं या बस जरूरत नहीं है (जैसे मुद्रण के लिए पुस्तकालय, आदि)। Java.awt और java.swing जैसी लाइब्रेरी समर्थित नहीं हैं क्योंकि Android में उपयोगकर्ता इंटरफ़ेस के लिए अन्य लाइब्रेरी हैं। Android SDK अन्य तृतीय पक्ष पुस्तकालयों जैसे org.blues (ब्लूटूथ समर्थन) का समर्थन करता है। अंततः, Android कोड को Dalvik opcodes में संकलित किया जाता है। डेविल्क एक विशेष वर्चुअल मशीन है, जो पावर, सीपीयू और मेमोरी जैसे सीमित संसाधनों वाले मोबाइल उपकरणों के लिए अनुकूलित है।
एंड्रॉइड और जावा में क्या अंतर है?
जावा एक प्रोग्रामिंग भाषा है, जबकि एंड्रॉइड एक मोबाइल फोन प्लेटफॉर्म है। एंड्रॉइड विकास जावा-आधारित है (ज्यादातर समय), क्योंकि जावा पुस्तकालयों का एक बड़ा हिस्सा एंड्रॉइड में समर्थित है। हालांकि, महत्वपूर्ण अंतर हैं। जावा के विपरीत, एंड्रॉइड एप्लिकेशन में मुख्य कार्य नहीं होता है। उनके पास ऑनक्रीट, ऑन रेज़्यूम, ऑन पॉज़ और ऑनडेस्ट्रॉय फ़ंक्शंस हैं जिन्हें डेवलपर्स द्वारा ओवरराइट किया जाना चाहिए। जावा कोड जावा बाइटकोड में संकलित होता है, जबकि एंड्रॉइड कोड डेविल्क ऑपकोड में संकलित होता है।