اندروید در مقابل جاوا
جاوا یکی از محبوب ترین زبان های برنامه نویسی شی گرا در جهان است. جاوا به شدت برای نرم افزار و توسعه وب استفاده می شود. اخیراً جاوا به یک زبان محبوب برای برنامه های کاربردی مبتنی بر موبایل نیز تبدیل شده است. اندروید یک پلتفرم مبتنی بر تلفن همراه است که توسط گوگل توسعه یافته است. توسعه اندروید بیشتر اوقات مبتنی بر جاوا است. بخش بزرگی از کتابخانههای جاوا در پلتفرم اندروید موجود است، اما بسیاری از کتابخانههای دیگر (غیر جاوا) در اندروید (برای رابطهای کاربری و غیره) نیز وجود دارد.
جاوا
جاوا یکی از پرکاربردترین زبان های برنامه نویسی شی گرا (و کلاس محور) است که امروزه برای توسعه نرم افزار تا توسعه وب استفاده می شود.این یک زبان برنامه نویسی با هدف عمومی و همزمان است. این در ابتدا توسط Sun Microsystems در سال 1995 توسعه یافت. جیمز گاسلینگ پدر زبان برنامه نویسی جاوا است. شرکت Oracle اکنون مالک جاوا است (پس از خرید Sun Microsystems اخیرا). Java Standard Edition 6 نسخه پایدار فعلی آن است. جاوا یک زبان با تایپ قوی است که طیف وسیعی از پلتفرم ها از ویندوز تا یونیکس را پشتیبانی می کند. جاوا تحت مجوز عمومی عمومی گنو مجوز دارد. نحو جاوا بسیار شبیه به C و C++ است. فایل های منبع جاوا دارای پسوند java. هستند. پس از کامپایل فایل های منبع جاوا با استفاده از کامپایلر javac، فایل های.class (شامل بایت کد جاوا) تولید می کند. این فایل های بایت کد را می توان با استفاده از JVM (ماشین مجازی جاوا) تفسیر کرد. از آنجایی که JVM را می توان بر روی هر پلتفرمی اجرا کرد، گفته می شود که جاوا چند پلتفرمی (cross-platform) و بسیار قابل حمل است. به طور معمول، کاربران نهایی از JRE (محیط زمان اجرا جاوا) برای اجرای بایت کد جاوا (یا اپلت های جاوا در مرورگرهای وب) استفاده می کنند. توسعه دهندگان نرم افزار از کیت توسعه جاوا (JDK) برای توسعه برنامه استفاده می کنند.این یک ابر مجموعه از JRE است که شامل یک کامپایلر و یک دیباگر است. یکی از ویژگی های خوب جاوا جمع آوری خودکار زباله آن است که در آن اشیایی که دیگر مورد نیاز نیستند به طور خودکار از حافظه حذف می شوند.
Android
Android یک پلت فرم تلفن همراه است که توسط Google توسعه یافته است. بخش بزرگی از کتابخانه های جاوا 5.0 در اندروید پشتیبانی می شود. بنابراین می توان گفت که توسعه اندروید مبتنی بر جاوا است. بسیاری از کتابخانه های جاوا که پشتیبانی نمی شوند یا جایگزین های بهتری دارند (سایر کتابخانه های مشابه) یا به سادگی مورد نیاز نیستند (مانند کتابخانه هایی برای چاپ و غیره). کتابخانه هایی مانند java.awt و java.swing پشتیبانی نمی شوند زیرا Android کتابخانه های دیگری برای رابط کاربری دارد. Android SDK از سایر کتابخانه های شخص ثالث مانند org.blues (پشتیبانی از بلوتوث) پشتیبانی می کند. در نهایت، کد اندروید در کدهای عملیاتی دالویک کامپایل می شود. Davilk یک ماشین مجازی ویژه است که برای دستگاه های تلفن همراه با منابع محدود مانند قدرت، CPU و حافظه بهینه شده است.
تفاوت اندروید و جاوا چیست؟
جاوا یک زبان برنامه نویسی است، در حالی که اندروید یک پلت فرم تلفن همراه است. توسعه اندروید مبتنی بر جاوا است (بیشتر اوقات)، زیرا بخش بزرگی از کتابخانه های جاوا در اندروید پشتیبانی می شود. با این حال، تفاوت های کلیدی وجود دارد. بر خلاف جاوا، برنامه های اندروید عملکرد اصلی ندارند. آنها دارای توابع onCrete، onResume، onPause و onDestroy هستند که باید توسط توسعه دهندگان بازنویسی شوند. کد جاوا در بایت کد جاوا کامپایل می شود، در حالی که کد اندروید در کد عملیاتی Davilk کامپایل می شود.