آموزه

هرگز کیفیت را فدای کمیت نخواهیم کرد

سبد خرید 0

چرا برنامه های جاوا روی اندروید و اندروید روی جاوا اجرا نمیشوند

دوستان سلام محمد رجب زاده هستم توی این پست میخوایم ببینیم که چرا برنامه هایی به زبان جاوا نوشته شده روی اندروید اجرا نمیشه و جرا برنامه هایی که برای اندروید نوشته شده روی سیستم هایی که زبان جاوا رو اجرا میکنند کار نمیکنه

خوب اول به مورد اولی میپردازم “چرا برنامه های جاوا روی اندروید کار نمی کنند؟” خوب پاسخ به این سوال رو بدون مقدمه شروع میکنم.

خوب اگر با زبان برنامه نویسی جاوا آشنا باشید میدونید که برای اجرا دستورات این زبان به یک ماشین مجازی به اسم jvm که مخفف java vitural machine هست نیاز داریم که این ماشین درواقع همونه چیزی که باعث اجرا شدن کد های جاوا و درنهات برنامه های جاوا میشه و اگر در زمینه اندروید هم اطلاع داشته باشید می دونید که هسته اندروید به زبان جاوا نوشته شده و درواقع کل اندروید به این زبان نوشته شده پس چرا برنامه های جاوا روی اون اجرا نمشن خوب در ادامه باید بگم که اندروید یک سیست عامل بسیار پیشرفته هستش و از اونجایی که روی پلتفرم های تلفن همراه داره پیاده سازی میشه پس مصرف باطری یا بهتر بگم مصرف بهینه باطری خیلی مهم هستش و اگر این سیستم بخواد از نسخه پایه ماشین jvm استفاده کنه پس در زمینه مصرف باطری اصلا کنترلی نداره ، همچنین یکی از ویژگی های اندروید امکانات بسیار زیاد اون نسبت به دیگر سیستم های عامل مشابه هست و اگر اندروید بخواد از ماشین jvm استفاده کنه باز توی این زمینه هم مشکل داره و به یک سیستم عامل ضعیف و پر مصرف تبدیل میشه خوب پس راه حل گوگل برای بهینه کردن اندروید چی بوده؟ خوب باید بگم گوگل برای اینکه سیستم عامل اندروید به این صورت که میبینید عالی و کم نقص کار کنه یک ماشین از روی ماشین jvm ساخت و این ماشین رو برای اندروید بهینه کرد. بهینه کرد یعنی چی؟ خوب الان میگم یعنی اومد ویژگی هایی رو که ماشین jvm داشت و به درد اندروید نمی خورد حذف کرد و به جای اونا ویژگی هایی رو که اندروید نیاز داشت و ماشین jvm اونا رو نداشت رو اضافه کرد همچنین اومد و نوع کامپایل شدن و اینا رو به صورت سبک تر و گرافیکی تغییر داد و چند تا تغییر همینجوری دیگه تا اینجا تعریف بهینه سازی بود خوب اما ادامه کار ، گوگل اسم این ماشین رو که تازه ساخته بود dalvic vitural machine گذاشت که امروزه اون رو به نام dalvic میشناسن خوب ازاونجایی که تقریبا کل کار این ماشین از درون با ماشین jvm تفاوت داره پس برنامه های جاوا روی این ماشین اجرا نمیشن اما اگر یادتون باشه ما گفتیم که ماشین پیشرفته تری ساخت نه پسرفته تری خوب اگر بخوام بهتر توضیح بدم باید بگو درحالت عادی اجرا نمیشن اما وقتی که شما یه برنامه که کارش تبدیل کد های جاوا از jvm به dalvic هست نصب کنی این مشکل هم برطرف میشه فقط تا اینجا به این نکته توجه کنید که این برنامه برای نصب در اندروید حجم بسیار کمی داره

حالا بریم سراغ ادامه داستان و سوال دوم که گفته بودم چرا برنامه های اندروید روی سیستم های جاوا اجرا نمیشه؟ خوب اگر قسمت بالا رو خونده باشید دلیل این مسئله رو متوجه شدید تا الان اما از اونجا که بالاخره هسته اندروید جاوا هستش خوب پس اجرا شدن اون روی سیستم های جاوا باید امکان پذیر باشه! ، خوب باید بگم که درسته اما مثل سوال بالا به یه برنامه تبدیل گر نیاز داری اما اگر توجه کرده باشید بالا گفتم حجم این برنامه روی اندروید کمه ، خوب اما حجم برنامه مشابه روی سیستم های جاوا برای خواندن کد های اندروید اصلا هم کم نیست و نسبتا زیاد هم هست اما چرا؟ ، خوب چون ماشین dalvic ماشینی پیشرفته تر از jvm هستش و خوب برای تبدیل کد های اون به jvm به برنامه نویسی بیشتری نیازه که باعث افزایش حجم برنامه میشه

خوب این پست هم تمام شد لطفا برای حمایت از ما نظر بدید همچنین میتونید نظرات ، انتقادات ، پیشنهادات و سوالاتتون رو در بخش نظرات مطرح کنید نظرات پایین پست های مرتبط قرار داره!

محمد رجب زادهمحمد رجب زاده

محمد رجب زاده هستم مدیر سایت آموزه چند سالی هست که برنامه نویسی میکنم بیش از یک سال هست که برنامه نویسی اندروید رو به صورت جدی شروع کردم و بیش از دوسال هست که backend مینویسم همیشه چه در برنامه نویسی چه در دوره هایی که ظبط میکنم سعی من بر این بوده که بهترین کیفیت کار رو در کوتاه ترین زمان ممکن ارائه بدم و به نظر دانشجو ها همواره احترام گزاشتم و نظرشون برام مهم بوده همیشه

مطالب مرتبط

دیدگاه ها

دیدگاه کاربران انتشار یافته : 0 - در انتظار بررسی :
    • دیدگاه ارسال شده توسط شما ، پس از تایید توسط مدیران سایت منتشر خواهد شد.
    • دیدگاهی که به غیر از زبان فارسی یا غیر مرتبط با مطلب باشد منتشر نخواهد شد.