JDK, JRE, এবং JVM এর মধ্যে পার্থক্য
জাভাতে আরও এগিয়ে যাওয়ার আগে আমাদের অবশ্যই JDK, JRE এবং JVM এর মধ্যে পার্থক্য বুঝতে হবে। এখানে JVM এর সংক্ষিপ্ত বিবরণ দেখুন।
আপনি যদি জাভা ভার্চুয়াল মেশিনের বিস্তারিত জ্ঞান পেতে চান তবে পরবর্তী পৃষ্ঠায় যান। প্রথমত, আসুন জেডিকে, জেআরই এবং জেভিএম-এর মধ্যে পার্থক্য দেখি।
জেভিএম
JVM (জাভা ভার্চুয়াল মেশিন) একটি বিমূর্ত মেশিন। এটিকে একটি ভার্চুয়াল মেশিন বলা হয় কারণ এটি শারীরিকভাবে বিদ্যমান নেই। এটি একটি স্পেসিফিকেশন যা একটি রানটাইম পরিবেশ প্রদান করে যেখানে জাভা বাইটকোড কার্যকর করা যেতে পারে। এটি সেই প্রোগ্রামগুলিও চালাতে পারে যা অন্যান্য ভাষায় লেখা এবং জাভা বাইটকোডে সংকলিত।
JVM অনেক হার্ডওয়্যার এবং সফ্টওয়্যার প্ল্যাটফর্মের জন্য উপলব্ধ। JVM, JRE, এবং JDK প্ল্যাটফর্ম নির্ভর কারণ প্রতিটি OS এর কনফিগারেশন একে অপরের থেকে আলাদা। যাইহোক, জাভা প্ল্যাটফর্ম স্বাধীন। JVM এর তিনটি ধারণা রয়েছে: স্পেসিফিকেশন, বাস্তবায়ন এবং উদাহরণ।
JVM নিম্নলিখিত প্রধান কাজগুলি সম্পাদন করে:
- লোড কোড
- কোড যাচাই করে
- কোড এক্সিকিউট করে
- রানটাইম পরিবেশ প্রদান করে
জেআরই
JRE হল Java Runtime Environment এর সংক্ষিপ্ত রূপ। এটি জাভা RTE নামেও লেখা আছে। জাভা রানটাইম এনভায়রনমেন্ট হল সফটওয়্যার টুলের একটি সেট যা জাভা অ্যাপ্লিকেশন ডেভেলপ করার জন্য ব্যবহৃত হয়। এটি রানটাইম পরিবেশ প্রদান করতে ব্যবহৃত হয়। এটি JVM এর বাস্তবায়ন। এটি শারীরিকভাবে বিদ্যমান। এটিতে লাইব্রেরি + অন্যান্য ফাইলের একটি সেট রয়েছে যা JVM রানটাইমে ব্যবহার করে।
JVM এর বাস্তবায়ন সান মাইক্রো সিস্টেম ছাড়াও অন্যান্য কোম্পানিগুলি সক্রিয়ভাবে প্রকাশ করেছে।
জেডিকে
JDK জাভা ডেভেলপমেন্ট কিটের সংক্ষিপ্ত রূপ। জাভা ডেভেলপমেন্ট কিট (JDK) হল একটি সফটওয়্যার ডেভেলপমেন্ট এনভায়রনমেন্ট যা জাভা অ্যাপ্লিকেশন এবং অ্যাপলেট ডেভেলপ করতে ব্যবহৃত হয়। এটি শারীরিকভাবে বিদ্যমান। এতে JRE + ডেভেলপমেন্ট টুল রয়েছে।
JDK হল ওরাকল কর্পোরেশন দ্বারা প্রকাশিত নিচের যে কোনো একটি জাভা প্ল্যাটফর্মের একটি বাস্তবায়ন:
স্ট্যান্ডার্ড সংস্করণ জাভা প্ল্যাটফর্ম
এন্টারপ্রাইজ সংস্করণ জাভা প্ল্যাটফর্ম
মাইক্রো সংস্করণ জাভা প্ল্যাটফর্ম
JDK-তে একটি ব্যক্তিগত জাভা ভার্চুয়াল মেশিন (JVM) এবং কিছু অন্যান্য সংস্থান রয়েছে যেমন একটি দোভাষী/লোডার (জাভা), একটি কম্পাইলার (জাভাক), একটি আর্কাইভার (জার), একটি ডকুমেন্টেশন জেনারেটর (জাভাডক) ইত্যাদি। একটি জাভা অ্যাপ্লিকেশনের বিকাশ।

