آموزش Java به صورت پروژه‌محور: سریع، کاربردی و حرفه‌ای |جلسه هفتم: تفاوت بین JDK، JRE و JVM (Difference Between JDK, JRE, and JVM)
برنامه نویسی جاوا

آموزش Java به صورت پروژه‌محور: سریع، کاربردی و حرفه‌ای |جلسه هفتم: تفاوت بین JDK، JRE و JVM (Difference Between JDK, JRE, and JVM)

تمامی سه مورد JDK، JRE و JVM به هم وابسته هستند. JDK یا کیت توسعه جاوا برای توسعه‌دهندگان است تا برنامه‌های مبتنی بر جاوا را توسعه دهند. JRE یا محیط اجرایی جاوا جایی است که برنامه جاوا در آن اجرا می‌شود. JDK شامل JRE به عنوان بخشی جدایی‌ناپذیر از خود است. همچنین می‌توان JRE را به‌طور جداگانه بر روی سیستم‌هایی که نیازی به توسعه ندارند نصب کرد و تنها برای اجرای برنامه‌های مبتنی بر جاوا یا اجرای یک برنامه جاوا استفاده کرد. JVM یک مشخصه است و می‌تواند پیاده‌سازی‌های مختلفی داشته باشد، تا زمانی که با مشخصات آن سازگار باشد. مشخصات این پیاده‌سازی‌ها را می‌توانید در لینک  مشاهده کنید .JRE پیاده‌سازی JVM است.

JDK چیست؟

 JDK مخفف Java Development Kit یا کیت توسعه جاوا است که شامل تمام ابزارها، برنامه‌های اجرایی و باینری‌های لازم برای کامپایل، دیباگ و اجرای یک برنامه جاوا می‌باشد. JDK وابسته به پلتفرم است، یعنی برای سیستم‌عامل‌های مختلف مانند ویندوز، مک و یونیکس نصب‌کننده‌های جداگانه‌ای دارد. JDK شامل هر دو مورد JVM و JRE است و کاملاً مسئول اجرای کد می‌باشد. نسخه JDK نمایانگر نسخه‌ای از جاوا است.

JRE چیست؟

JRE یا Java Runtime Environment محیط اجرایی جاوا است که پیاده‌سازی JVM می‌باشد، یعنی مشخصات تعریف‌شده در JVM پیاده‌سازی شده و محیطی مطابق آن برای اجرای کد فراهم می‌کند. JRE عمدتاً شامل باینری‌های جاوا و کلاس‌های دیگر برای اجرای برنامه است، مانند JVM که به صورت فیزیکی وجود دارد. به همراه باینری‌های جاوا، JRE همچنین شامل تکنولوژی‌های مختلف برای استقرار، رابط‌های کاربری برای تعامل با کد اجراشده، برخی کتابخانه‌های پایه برای عملکردهای مختلف، و کتابخانه‌های مبتنی بر زبان و ابزار است.

JVM چیست؟

JVM مخفف Java Virtual Machine یا ماشین مجازی جاوا است که یک مشخصه است که محیط اجرایی را فراهم می‌کند که در آن کد بایت جاوا می‌تواند اجرا شود، یعنی چیزی است که انتزاعی بوده و پیاده‌سازی آن مستقل از انتخاب الگوریتم است و توسط سان و شرکت‌های دیگر فراهم شده است. این JVM است که مسئول تبدیل کد بایت به کد خاص ماشین می‌باشد. همچنین می‌تواند برنامه‌هایی را که به زبان‌های دیگر نوشته شده‌اند و به کد بایت جاوا کامپایل شده‌اند، اجرا کند. وظایف JVM عبارتند از: بارگذاری کد، تأیید کد، اجرای کد و فراهم کردن محیط اجرایی.

تفاوت‌های بین JDK، JRE و JVM

در زیر تفاوت‌های مهم بین JDK، JRE و JVM آورده شده است:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

PHP از دستورات echo و print برای نمایش خروجی در مرورگر یا کنسول PHP استفاده می‌کند. هر دو ساختارهای زبان...
شناسه‌ها در ++C نام‌های منحصربه‌فردی هستند که برای شناسایی متغیرها، توابع، کلاس‌ها، آرایه‌ها و سایر آیتم‌های تعریف‌شده توسط کاربر در...
++C
کلمات کلیدی در C++ کلمات رزرو شده‌ای هستند که برای کامپایلر معنا و مفهوم خاصی دارند. این کلمات نمی‌توانند برای...
++C
ثابت‌ها به مقادیر ثابتی اشاره دارند که برنامه نباید آن‌ها را تغییر دهد و به آن‌ها لیترال (Literal) گفته می‌شود. ثابت‌ها می‌توانند...
C++ Programming Language
توکن‌های C++ کوچک‌ترین واحدهای مستقل در یک برنامه هستند که توسط کامپایلر شناسایی و پردازش می‌شوند. این توکن‌ها با هم...
C++ Programming Language
حذف فضای نام (Namespace) شما می‌توانید به‌صورت صریح از پیشوند std:: برای اشیاء و توابع کتابخانه استاندارد استفاده کنید، به‌جای اینکه از...
C++ Programming Language