জেডিকে এবং জেআরই এর মধ্যে পার্থক্য কী?
তাদের ভূমিকা কী এবং আমি কখন একটি বা অন্য ব্যবহার করব?
জেডিকে এবং জেআরই এর মধ্যে পার্থক্য কী?
তাদের ভূমিকা কী এবং আমি কখন একটি বা অন্য ব্যবহার করব?
উত্তর:
JRE হয় জাভা রানটাইম এনভায়রনমেন্ট । এটি জাভা ভার্চুয়াল মেশিন (জেভিএম), জাভা ক্লাস লাইব্রেরি, java
কমান্ড এবং অন্যান্য অবকাঠামো সহ একটি সংকলিত জাভা প্রোগ্রাম চালানোর জন্য প্রয়োজনীয় সমস্ত কিছুর একটি প্যাকেজ । তবে এটি নতুন প্রোগ্রাম তৈরি করতে ব্যবহার করা যাবে না।
JDK হয় জাভা ডেভেলপমেন্ট কিট , জাভা জন্য পূর্ণ-বৈশিষ্ট্যযুক্ত SDK এর। এটিতে জেআরআর যা আছে তা রয়েছে তবে সংকলক ( javac
) এবং সরঞ্জামগুলিও (লাইক javadoc
এবং jdb
) রয়েছে। এটি প্রোগ্রাম তৈরি এবং সংকলন করতে সক্ষম।
সাধারণত, আপনি যদি কম্পিউটারে জাভা প্রোগ্রামগুলি চালনার বিষয়ে চিন্তা করেন তবে আপনি কেবল জেআরই ইনস্টল করবেন। আপনার যা প্রয়োজন তা সবই। অন্যদিকে, আপনি যদি কিছু জাভা প্রোগ্রামিং করার পরিকল্পনা করে থাকেন তবে আপনার পরিবর্তে জেডিকে ইনস্টল করতে হবে।
কখনও কখনও, আপনি যদি কম্পিউটারে কোনও জাভা বিকাশ করার পরিকল্পনা নাও করেন, আপনার এখনও জেডিকে ইনস্টল করা দরকার। উদাহরণস্বরূপ, আপনি যদি জেএসপি দিয়ে কোনও ওয়েব অ্যাপ্লিকেশন স্থাপন করছেন, আপনি প্রযুক্তিগতভাবে কেবল অ্যাপ্লিকেশন সার্ভারের ভিতরে জাভা প্রোগ্রামগুলি চালাচ্ছেন। আপনার তখন জেডিকে দরকার হবে কেন? কারণ অ্যাপ্লিকেশন সার্ভারটি জেএসপিটিকে জাভা সার্লেলেটে রূপান্তরিত করবে এবং সার্লেটগুলি সংকলনের জন্য জেডিকে ব্যবহার করা প্রয়োজন। আমি নিশ্চিত যে আরও উদাহরণ আছে।
উপরের উত্তর (পাবলো দ্বারা) খুব সঠিক। এটি কেবল অতিরিক্ত তথ্য।
JRE , যেমন নাম, বোঝা একটি হল পরিবেশ । বুদ্ধিমানের জন্য এটি মূলত জাভা সম্পর্কিত ফাইলগুলির সাথে একটি গুচ্ছ ডিরেক্টরি:
bin/
জাভার এক্সিকিউটেবল প্রোগ্রাম রয়েছে। সর্বাধিক গুরুত্বপূর্ণ হ'ল java
(এবং উইন্ডোজের javaw
জন্যও), যা জেভিএম চালু করে। এখানে আরও কিছু ইউটিলিটি রয়েছে যেমন, keytool
এবং policytool
।conf/
জাভা বিশেষজ্ঞদের সাথে খেলতে ব্যবহারকারীর জন্য সম্পাদনযোগ্য কনফিগারেশন ফাইল রাখে।lib/
প্রচুর সমর্থনকারী ফাইল রয়েছে: কিছু .jar
গুলি, কনফিগারেশন ফাইল, সম্পত্তি ফাইল, ফন্ট, অনুবাদ, শংসাপত্র ইত্যাদি all জাভার সমস্ত "ট্রিমিংস"। সর্বাধিক গুরুত্বপূর্ণ হ'ল modules
একটি ফাইল যা .class
জাভা স্ট্যান্ডার্ড লাইব্রেরির ফাইলগুলি অন্তর্ভুক্ত করে ।.dll
(উইন্ডোজ) বা .dylib
(ম্যাকস) বা .so
(লিনাক্স) ফাইল রয়েছে ।bin/
lib/
JDK এছাড়াও ডিরেক্টরি একটি সেট। এটি কিছু সংযোজন সহ জেআরই-এর একটি সুপারস্টার:
bin/
বিকাশ সরঞ্জাম দিয়ে বড় করা হয়েছে। এর মধ্যে সবচেয়ে গুরুত্বপূর্ণ হ'ল javac
; অন্যদের অন্তর্ভুক্ত jar
, javadoc
এবং jshell
।jmods/
, যা স্ট্যান্ডার্ড লাইব্রেরির জন্য জেএমড ফাইল রাখে, যুক্ত করা হয়েছে। এই ফাইলগুলি স্ট্যান্ডার্ড লাইব্রেরিটি ব্যবহার করতে দেয় jlink
।জেডি কে জেআরই-র একটি সুপারসেট, এবং জেআরইতে থাকা সমস্ত কিছু, এবং অ্যাপলেট এবং অ্যাপ্লিকেশনগুলির বিকাশের জন্য প্রয়োজনীয় সংকলক এবং ডিবাগারগুলির মতো সরঞ্জাম রয়েছে। জেআরই জাভা প্রোগ্রামিং ভাষায় লিখিত অ্যাপলেট এবং অ্যাপ্লিকেশন চালানোর জন্য গ্রন্থাগারগুলি, জাভা ভার্চুয়াল মেশিন (জেভিএম) এবং অন্যান্য উপাদান সরবরাহ করে।
সাধারণ কথায়: জেডি কে দাদা জেআরই বাবা এবং জেভিএম তাদের ছেলে। [অর্থাত্ জেডিকে> জেআরই> জেভিএম]
জেডিকে = জেআরই + বিকাশ / ডিবাগিং সরঞ্জাম
জেআরই = জেভিএম + জাভা প্যাকেজ ক্লাস (যেমন ব্যবহার, গণিত, ল্যাং, অ্যাড, সুইং ইত্যাদি) + রানটাইম লাইব্রেরি।
জেভিএম = ক্লাস লোডার সিস্টেম + রানটাইম ডেটা অঞ্চল + এক্সিকিউশন ইঞ্জিন।
অন্য কথায় আপনি যদি জাভা প্রোগ্রামার হন তবে আপনার সিস্টেমে আপনার জেডিকে দরকার হবে এবং এই প্যাকেজের মধ্যে জেআরই এবং জেভিএমও অন্তর্ভুক্ত থাকবে তবে আপনি যদি সাধারণ ব্যবহারকারী হন যারা অনলাইনে গেম খেলতে পছন্দ করেন তবে আপনার কেবল জেআরই প্রয়োজন হবে এবং এই প্যাকেজটি থাকবে না এতে জেডিকে।
জেভিএম:
জাভা ভার্চুয়াল মেশিন (JVM) ভার্চুয়াল মেশিন যে জাভা bytecodes চালানো হয়। JVM জাভা উত্স কোডটি বুঝতে পারে না, এজন্য আপনি JVM দ্বারা বোধগম্য বাইটোকডগুলি ধারণ করে * .class ফাইলগুলি সংগ্রহ করার জন্য আপনার *। জাভা ফাইলগুলি সংকলন করেন। এটি সেই সত্তা যা জাভাকে একটি "পোর্টেবল ভাষা" হতে দেয় (একবারে লিখুন, যে কোনও জায়গায় চালান)। প্রকৃতপক্ষে বিভিন্ন সিস্টেমের জন্য জেভিএমের নির্দিষ্ট প্রয়োগ রয়েছে (উইন্ডোজ, লিনাক্স, ম্যাকস, উইকিপিডিয়া তালিকাটি দেখুন ..), লক্ষ্য হ'ল একই বাইককোড সহ তারা সকলেই একই ফলাফল দেয়।
জেডিকে এবং জেআরই
জেডিকে এবং জেআরইয়ের মধ্যে পার্থক্যটি ব্যাখ্যা করার জন্য, ওরাকল ডকুমেন্টেশন পড়া এবং চিত্রটির সাথে পরামর্শ করা সবচেয়ে ভাল:
জাভা রানটাইম এনভায়রনমেন্ট (জেআরই)
জাভা রানটাইম এনভাইরনমেন্ট (JRE) অ্যাপলেট এবং অ্যাপ্লিকেশন জাভা প্রোগ্রামিং ভাষায় লেখা চালানোর জন্য লাইব্রেরি, জাভা ভার্চুয়াল মেশিন, এবং অন্যান্য উপাদান প্রদান করে। তদতিরিক্ত, দুটি মূল ডিপ্লোমেন্ট প্রযুক্তি হ'ল জেআরইর অংশ: জাভা প্লাগ-ইন, যা জনপ্রিয় ব্রাউজারগুলিতে অ্যাপলেটগুলিকে চালিত করতে সক্ষম করে; এবং জাভা ওয়েব স্টার্ট, যা কোনও নেটওয়ার্কের মাধ্যমে স্বতন্ত্র অ্যাপ্লিকেশন মোতায়েন করে। এটি এন্টারপ্রাইজ সফ্টওয়্যার বিকাশ এবং স্থাপনার জন্য জাভা 2 প্ল্যাটফর্ম, এন্টারপ্রাইজ সংস্করণ (জে 2 ইই) এর প্রযুক্তিগুলিরও ভিত্তি। জেআরইতে অ্যাপলেট এবং অ্যাপ্লিকেশন বিকাশের জন্য সংকলক বা ডিবাগারের মতো সরঞ্জাম এবং ইউটিলিটি নেই।
জাভা ডেভলপমেন্ট কিট (জেডিকে)
জেডিকে জেআরই-র একটি সুপারসেট, এবং জেআরইতে থাকা সমস্ত কিছু, এবং অ্যাপলেট এবং অ্যাপ্লিকেশনগুলির বিকাশের জন্য প্রয়োজনীয় সংকলক এবং ডিবাগারের মতো সরঞ্জাম রয়েছে।
মনে রাখবেন যে জেডিকে সরবরাহ করার জন্য কেবল ওরাকলই নন।
অফিসিয়াল জাভা ওয়েবসাইট থেকে ...
জেআরই (জাভা রানটাইম পরিবেশ):
জেডিকে (জাভা ডেভলপমেন্ট কিট)
একটি ডিবাগিং দৃষ্টিকোণ থেকে একটি পার্থক্য:
স্ট্রিং এবং অ্যারেলিস্টের মতো জাভা সিস্টেমের ক্লাসগুলিতে ডিবাগ করার জন্য আপনার জেআরইর একটি বিশেষ সংস্করণ প্রয়োজন যা "ডিবাগ তথ্য" দিয়ে সংকলিত। জেডিকে অন্তর্ভুক্ত জেআরই এই তথ্য সরবরাহ করে, তবে নিয়মিত জেআরই তা করে না। নিয়মিত জেআরই আরও ভাল পারফরম্যান্স নিশ্চিত করতে এই তথ্যটি অন্তর্ভুক্ত করে না।
ডিবাগিং তথ্য কী? এই ব্লগ পোস্ট থেকে নেওয়া এখানে একটি দ্রুত ব্যাখ্যা :
আধুনিক সংকলকগণ আপনার উচ্চ-স্তরের কোডটিকে সুন্দরভাবে ইন্ডেন্টেড এবং নেস্টেড কন্ট্রোল স্ট্রাকচার এবং নির্বিচারে টাইপ করা ভেরিয়েবলগুলি বিটগুলির একটি বড় স্তূপে মেশিন কোড (বা জাভা এর ক্ষেত্রে বাইটকোড) রূপান্তরিত করে একটি দুর্দান্ত কাজ করেছেন, যার একমাত্র উদ্দেশ্য লক্ষ্য সিপিইউতে (আপনার জেভিএমের ভার্চুয়াল সিপিইউ) যত তাড়াতাড়ি সম্ভব চালানো। জাভা কোডটি বেশ কয়েকটি মেশিন কোডের নির্দেশিকায় রূপান্তরিত হয়। ভেরিয়েবলগুলি পুরো জায়গায় জুড়ে দেওয়া হয় - স্ট্যাকের মধ্যে, নিবন্ধগুলিতে বা সম্পূর্ণরূপে অনুকূলিত করা। ফলাফল এবং কোডগুলি এমনকি ফলাফলের কোডগুলিতেও বিদ্যমান নেই - এগুলি কেবল একটি বিমূর্ততা যা মেমরি বাফারগুলিতে হার্ড-কোডড অফসেটগুলিতে অনুবাদ হয়।
সুতরাং কোনও ডিবাগার যখন কোনও ফাংশনে প্রবেশের সময় বিরতি জিজ্ঞাসা করবেন তখন কীভাবে থামতে হবে? আপনি যখন কোনও ভেরিয়েবলের মান জিজ্ঞাসা করেন তখন কী দেখায় তা কীভাবে এটি পরিচালনা করে? উত্তরটি হ'ল - ডিবাগিং তথ্য।
ডিবাগিং তথ্য মেশিন কোডের সাথে একত্রে সংকলক তৈরি করে। এটি এক্সিকিউটেবল প্রোগ্রাম এবং মূল উত্স কোডের মধ্যে সম্পর্কের একটি প্রতিনিধিত্ব। এই তথ্যটি একটি পূর্বনির্ধারিত বিন্যাসে এনকোড করা হয়েছে এবং মেশিন কোডের পাশাপাশি সংরক্ষণ করা হয়েছে। বিভিন্ন প্ল্যাটফর্ম এবং এক্সিকিউটেবল ফাইলের জন্য এই জাতীয় বহু ফর্ম্যাটগুলি বছরের পর বছর আবিষ্কার করা হয়েছিল।
জেভিএম, জেআরই, জেডিকে - এগুলি সবই জাভা ভাষার মেরুদণ্ড। প্রতিটি উপাদান পৃথকভাবে কাজ করে। জেডিকে এবং জেআরই শারীরিকভাবে বিদ্যমান তবে জেভিএম একটি বিমূর্ত মেশিন যার অর্থ এটি শারীরিকভাবে বিদ্যমান নেই।
জেভিএম হ'ল জেডিকে এবং জেআরই-র সাবসিস্টেম যা "বাইটকোড" নামে পরিচিত মধ্যবর্তী কোডটি পরীক্ষা করতে ব্যবহৃত হয়। এটি প্রথমে জাভা সংকলক (জাভাক) দ্বারা জেভিএম সাবসিস্টেম শ্রেণিবদ্ধার এবং শ্রেণিবদ্ধ মেমরি অবস্থানের (শ্রেণি অঞ্চল, স্ট্যাক, হিপ এবং পিসি রেজিস্টার) মাধ্যমে তাদের ব্যবহার অনুযায়ী জাজ কমপ্লায়ার দ্বারা উত্পাদিত "ক্লাস ফাইল" (.c এক্সটেনশন থাকা) লোড করে। তারপরে এটি জাভাতে ফিরে আসে এবং নেটওয়ার্কের মাধ্যমে সমস্ত মেমরি অ্যাক্সেসযোগ্যতার অ্যাক্সেস নিশ্চিত করে তা সমস্ত বাইটকোড পরীক্ষা করে। দোভাষীর কাজ তার পরে শুরু হয় যেখানে এটি লাইন দ্বারা পুরো প্রোগ্রাম লাইন চেক করে। ফলাফলটি শেষ পর্যন্ত জেআরই (জাভা রানটাইম এনভায়রনমেন্ট) এর মাধ্যমে কনসোল / ব্রাউজার / অ্যাপ্লিকেশনটিতে প্রদর্শিত হবে যা রানটাইম সুবিধা।
জেআরই জেডিকের একটি সাবসিস্টেম যা জেভিএম, ক্লাস, এক্সিকিউটেবল ফাইল যেমন .jar ফাইল ইত্যাদির মতো রানটাইম সুবিধা সরবরাহ করে provides
জেডি কে মানে জাভা ডেভলপমেন্ট কিট। এটি জাভা প্রোগ্রামিংয়ে ব্যবহৃত সমস্ত প্রয়োজনীয় উপাদান যেমন শ্রেণি, পদ্ধতি, সুইং, এডাব্লুটি, প্যাকেজ, জাভা (দোভাষী), জাভাক (সংকলক), অ্যাপলেটভিউয়ার (অ্যাপলেট অ্যাপ্লিকেশন ভিউয়ার) ইত্যাদি ধারণ করে, সিদ্ধান্ত নিতে, এটি বিকাশের জন্য প্রয়োজনীয় প্রতিটি ফাইল রয়েছে অ্যাপ্লিকেশন, একক বা ওয়েব ভিত্তিক কিনা।
JRE
জেআরই জাভা রানটাইম এনভায়রনমেন্টের একটি সংক্ষিপ্ত রূপ। এটি রানটাইম পরিবেশ সরবরাহের জন্য ব্যবহৃত হয় J এটি জেভিএমের বাস্তবায়ন phys এটি শারীরিকভাবে বিদ্যমান I এটি লাইব্রেরির সেট + অন্যান্য ফাইল যা জেভিএম রানটাইম ব্যবহার করে uses
JDK
জেডি কে জাভা ডেভলপমেন্ট কিটের একটি সংক্ষিপ্ত রূপ। এটি শারীরিকভাবে বিদ্যমান t এতে জেআরই + বিকাশ সরঞ্জাম রয়েছে।
লিঙ্ক: - http://www.javatPoint.com/differences-between-jdk-jre-and-jvm
সাধারণত, আপনি যখন কেবল নিজের ব্রাউজার বা কম্পিউটারে জাভা প্রোগ্রামগুলি চালনার বিষয়ে চিন্তা করেন আপনি কেবল জেআরই ইনস্টল করবেন। আপনার যা প্রয়োজন তা সবই। অন্যদিকে, আপনি যদি কিছু জাভা প্রোগ্রামিং করার পরিকল্পনা করে থাকেন তবে আপনার জেডিকেও দরকার হবে।
জেভিএম, জেআরই এবং জেডিকে প্ল্যাটফর্ম নির্ভর, কারণ প্রতিটি ওএসের কনফিগারেশন আলাদা হয়। তবে, জাভা প্ল্যাটফর্ম স্বাধীন।
জাভা ভার্চুয়াল মেশিন (জেভিএম) একটি রান-টাইম সিস্টেম যা জাভা বাইটকোড কার্যকর করে।
জেআরই হল জাভা অ্যাপ্লিকেশনগুলি চালনার জন্য প্রয়োজনীয় পরিবেশ (স্ট্যান্ডার্ড লাইব্রেরি এবং জেভিএম)।
জেডিকে জেআরই প্লাস কমান্ড-লাইন বিকাশকারী সরঞ্জামগুলি অন্তর্ভুক্ত করে যেমন সংকলক এবং ডিবাগার যা অ্যাপলেট এবং অ্যাপ্লিকেশনগুলির বিকাশের জন্য প্রয়োজনীয় বা দরকারী।
এখানে ওরাকল থেকে সরাসরি একটি সহজ প্রতিক্রিয়া http://docs.oracle.com/javase/7/docs/technotes/guides/
জাভা এসই রানটাইম এনভায়রনমেন্ট (জেআরই)
জেআরই আপনার জাভা প্রোগ্রামিং ভাষায় লিখিত অ্যাপলেট এবং অ্যাপ্লিকেশন চালানোর জন্য প্রয়োজনীয় লাইব্রেরি, জাভা ভার্চুয়াল মেশিন এবং অন্যান্য উপাদান সরবরাহ করে। এই রানটাইম পরিবেশটি মুক্ত-স্থিত করতে অ্যাপ্লিকেশনগুলির সাথে পুনরায় বিতরণ করা যেতে পারে।
জাভা এসই ডেভলপমেন্ট কিট (জেডিকে)
জেডিকে জেআরই প্লাস কমান্ড-লাইন বিকাশকারী সরঞ্জামগুলি অন্তর্ভুক্ত করে যেমন সংকলক এবং ডিবাগার যা অ্যাপলেট এবং অ্যাপ্লিকেশনগুলির বিকাশের জন্য প্রয়োজনীয় বা দরকারী।
আপনি যদি জাভা প্রোগ্রামগুলি পরিচালনা করতে চান তবে সেগুলি বিকাশ না করে, জাভা রান-টাইম এনভায়রনমেন্ট বা জেআরই ডাউনলোড করুন। আপনি যদি এগুলি বিকাশ করতে চান তবে জাভা ডেভেলপমেন্ট কিট বা জেডিকে ডাউনলোড করুন
আসুন জেডিকে বলা হয় একটি কিট, যার মধ্যে রয়েছে জাভা অ্যাপ্লিকেশনগুলি বিকাশ এবং চালানো দরকার what
জেডিকে অ্যাপ্লিকেশন, উপাদান এস এবং অ্যাপলেটগুলি তৈরির জন্য বিকাশের পরিবেশ হিসাবে দেওয়া হয়।
এটি জাভা অ্যাপ্লিকেশনগুলি সংকলিত আকারে চালানোর জন্য আপনার প্রয়োজনীয় সমস্ত কিছু ধারণ করে। আপনার কোনও গ্রন্থাগার এবং অন্যান্য স্টাফ দরকার নেই। আপনার প্রয়োজনীয় সমস্ত জিনিস সংকলিত।
জেআরই উন্নয়নের জন্য ব্যবহার করা যায় না, কেবল অ্যাপ্লিকেশন চালানোর জন্য ব্যবহৃত হয়।
জেভিএম (জাভা ভার্চুয়াল মেশিন) একটি বিমূর্ত মেশিন। এটি একটি স্পেসিফিকেশন যা রানটাইম পরিবেশ সরবরাহ করে যেখানে জাভা বাইটকোড কার্যকর করা যায়।
জেআরই জাভা রানটাইম এনভায়রনমেন্টের একটি সংক্ষিপ্ত রূপ run এটি রানটাইম পরিবেশ সরবরাহের জন্য ব্যবহৃত হয় J এটি জেভিএমের বাস্তবায়ন t এটি শারীরিকভাবে বিদ্যমান t এটি লাইব্রেরির সেট + অন্যান্য ফাইল যা জেভিএম রানটাইম ব্যবহার করে
জেডি কে জাভা ডেভলপমেন্ট কিটের একটি সংক্ষিপ্ত রূপ। এটি শারীরিকভাবে বিদ্যমান t এতে জেআরই + বিকাশ সরঞ্জাম রয়েছে
আপনি যদি জাভা প্রোগ্রামার হন তবে আপনার সিস্টেমে আপনার জেডিকে দরকার হবে এবং এই প্যাকেজের মধ্যে জেআরই এবং জেভিএমও অন্তর্ভুক্ত থাকবে তবে আপনি যদি সাধারণ ব্যবহারকারী হন যারা অনলাইনে গেম খেলতে পছন্দ করেন তবে আপনার কেবল জেআরই প্রয়োজন হবে এবং এই প্যাকেজে এতে জেডিকে থাকতে হবে না ।
জেভিএম
জেভিএম (জাভা ভার্চুয়াল মেশিন) একটি বিমূর্ত মেশিন। এটি একটি স্পেসিফিকেশন যা রানটাইম পরিবেশ সরবরাহ করে যেখানে জাভা বাইটকোড কার্যকর করা যায়।
অনেকগুলি হার্ডওয়্যার এবং সফ্টওয়্যার প্ল্যাটফর্মের জন্য জেভিএম উপলব্ধ। জেভিএম, জেআরই এবং জেডিকে প্ল্যাটফর্ম নির্ভর, কারণ প্রতিটি ওএসের কনফিগারেশন আলাদা হয়। তবে, জাভা প্ল্যাটফর্ম স্বাধীন।
JRE
এটি জাভা অ্যাপ্লিকেশনগুলি সংকলিত আকারে চালানোর জন্য আপনার প্রয়োজনীয় সমস্ত কিছু ধারণ করে। আপনার কোনও গ্রন্থাগার এবং অন্যান্য স্টাফ দরকার নেই। আপনার প্রয়োজনীয় সমস্ত জিনিস সংকলিত।
জেআরই উন্নয়নের জন্য ব্যবহার করা যায় না, কেবল অ্যাপ্লিকেশন চালানোর জন্য ব্যবহৃত হয়।
জাভা এসই ডেভলপমেন্ট কিট (জেডিকে)
জেডিকে জেআরই প্লাস কমান্ড-লাইন বিকাশকারী সরঞ্জামগুলি অন্তর্ভুক্ত করে যেমন সংকলক এবং ডিবাগার যা অ্যাপলেট এবং অ্যাপ্লিকেশনগুলির বিকাশের জন্য প্রয়োজনীয় বা দরকারী।
(উত্স: গিক্সফোর্ডজিক্স প্রশ্নোত্তর , জাভা প্ল্যাটফর্ম ওভারভিউ )
এই পদগুলির একটি পরিষ্কার বোঝার জন্য (জেভিএম, জেডিকে, জেআরই) তাদের ব্যবহার এবং পার্থক্য বুঝতে প্রয়োজনীয়।
জেভিএম জাভা ভার্চুয়াল মেশিন (জেভিএম) একটি রান-টাইম সিস্টেম যা জাভা বাইটকোড কার্যকর করে। জেভিএম হ'ল ভার্চুয়াল কম্পিউটারের মতো যা সংকলিত নির্দেশাবলীর একটি সেট কার্যকর করতে পারে এবং মেমরির অবস্থানগুলি পরিচালনা করতে পারে। যখন কোনও জাভা সংকলক উত্স কোডটি সংকলন করে, এটি একটি ক্লাস ফাইলে বাইটকোড নামে নির্দেশাবলীর একটি অত্যন্ত অনুকূলিত সেট তৈরি করে। জেভিএম এই বাইকোড নির্দেশাবলী ব্যাখ্যা করে এবং এগুলি কার্যকর করার জন্য মেশিন-নির্দিষ্ট কোডে রূপান্তর করে।
জেডি কে জাভা ডেভলপমেন্ট কিট (জেডিকে) এমন একটি সফ্টওয়্যার ডেভলপমেন্ট এনভায়রনমেন্ট যা আপনি জাভা অ্যাপ্লিকেশনগুলি বিকাশ ও সম্পাদন করতে ব্যবহার করতে পারেন। এটিতে জেআরই এবং প্রোগ্রামিং সরঞ্জামগুলির একটি সেট অন্তর্ভুক্ত রয়েছে যেমন জাভা সংকলক, দোভাষী, অ্যাপলেটভিউ এবং ডকুমেন্ট ভিউয়ার। জেডিকে জাভা এসই, জাভা ইই, বা জাভা এমই প্ল্যাটফর্মের মাধ্যমে প্রয়োগ করা হয়।
জেআরই জাভা রানটাইম এনভায়রনমেন্ট (জেআরই) জেডিকে-র একটি অংশ যা একটি জেভিএম, কোর ক্লাস এবং বিভিন্ন লাইব্রেরি যা অ্যাপ্লিকেশন বিকাশ সমর্থন করে। যদিও জেআরডি জেডিকে অংশ হিসাবে উপলভ্য, আপনি এটি আলাদাভাবে ডাউনলোড করেও ব্যবহার করতে পারেন।
সম্পূর্ণ বোঝার জন্য আপনি আমার ব্লগটি দেখতে পাবেন: জেডি কে জেভিএম এবং পার্থক্য
jdk কোডটি সংকলন করতে এবং জাভা কোডকে বাইট কোডগুলিতে রূপান্তরিত করার জন্য ব্রে কোডগুলি সম্পাদন করার জন্য জেআরেকে প্রয়োজনীয়।
জেডিকে জেআরই প্লাস কমান্ড-লাইন বিকাশকারী সরঞ্জামগুলি অন্তর্ভুক্ত করে যেমন সংকলক এবং ডিবাগার যা অ্যাপলেট এবং অ্যাপ্লিকেশনগুলির বিকাশের জন্য প্রয়োজনীয় বা দরকারী।
জেআরই মূলত জাভা ভার্চুয়াল মেশিন যেখানে আপনার জাভা প্রোগ্রামগুলি চালু থাকে। এটিতে অ্যাপলেট কার্যকর করার জন্য ব্রাউজার প্লাগইনও অন্তর্ভুক্ত রয়েছে।
জেডিকে একটি বিমূর্ত মেশিন। এটি একটি স্পেসিফিকেশন যা রানটাইম পরিবেশ সরবরাহ করে যেখানে জাভা বাইটকোড কার্যকর করা যায়।
সুতরাং, মূলত @ জাইমিন প্যাটেল অনুযায়ী জেভিএম <জেআরই <জেডিকে বলেছিলেন।
মনে করুন, আপনি যদি বিকাশকারী হন তবে আপনার ভূমিকা প্রোগ্রাম বিকাশ করার পাশাপাশি প্রোগ্রামটি সম্পাদন করা। সুতরাং আপনার বিকাশ এবং সম্পাদন করার পরিবেশ থাকতে হবে যা জেডিকে সরবরাহ করেছে।
মনে করুন, আপনি যদি ক্লায়েন্ট হন তবে আপনাকে বিকাশের বিষয়ে চিন্তা করতে হবে না J আপনার প্রয়োজন কেবল একটি প্রোগ্রাম চালানোর পরিবেশ এবং কেবল ফলাফল পেতে, যা জেআরই দ্বারা সরবরাহ করা হয়।
জেআরই অ্যাপ্লিকেশনটি কার্যকর করে কিন্তু জেভিএম নির্দেশনা লাইনটি লাইনে পড়ে তাই এটি দোভাষী হয়।
জেডিকে = জেআরই + বিকাশ সরঞ্জাম
জেআরই = জেভিএম + লাইব্রেরি ক্লাস
JRE
জেআরই জাভা রানটাইম এনভায়রনমেন্টের একটি সংক্ষিপ্ত রূপ। এটি রানটাইম পরিবেশ সরবরাহ করতে ব্যবহৃত হয় J এটি জেভিএমের বাস্তবায়ন। এটি শারীরিকভাবে বিদ্যমান। এটিতে লাইব্রেরির সেট রয়েছে + অন্যান্য ফাইল যা জেভিএম রানটাইম ব্যবহার করে।
জেভিএম বাস্তবায়ন সান মাইক্রো সিস্টেমগুলি ছাড়াও অন্যান্য সংস্থাগুলি দ্বারা সক্রিয়ভাবে প্রকাশিত হয়েছে।
JDK
জেডি কে জাভা ডেভলপমেন্ট কিটের একটি সংক্ষিপ্ত রূপ। এটি শারীরিকভাবে বিদ্যমান t এতে জেআরই + বিকাশ সরঞ্জাম রয়েছে।