নিচে Real DOM এবং Virtual DOM এর মধ্যে পার্থক্য বাংলায় সহজভাবে তুলে ধরা হলো:
📌 Real DOM বনাম Virtual DOM
বিষয় | Real DOM (রিয়েল ডম) | Virtual DOM (ভার্চুয়াল ডম) |
---|---|---|
সংজ্ঞা | ব্রাউজারে দেখা বাস্তব DOM (Document Object Model)। | একটি হালকা ও কপি DOM যা মেমোরিতে সংরক্ষিত থাকে। |
আপডেটের গতি | ধীর, কারণ সরাসরি পুরো DOM পরিবর্তন করে। | দ্রুত, কারণ শুধু পরিবর্তিত অংশগুলো আপডেট করে। |
পারফরম্যান্স | বারবার পরিবর্তনে ধীর এবং কম কার্যকর। | বেশি পরিবর্তনে দ্রুত এবং কার্যকর। |
পরিচালনা (Manipulation) | JavaScript দিয়ে সরাসরি DOM পরিবর্তন করা হয়। যেমন: document.getElementById() |
React-এর মতো লাইব্রেরি Virtual DOM ব্যবহার করে আপডেট হিসাব করে। |
Re-rendering | DOM-এর যেকোনো পরিবর্তনে পুরো অংশ আবার রেন্ডার হয়। | শুধুমাত্র পরিবর্তিত অংশ রেন্ডার হয়। |
মেমোরি ব্যবহার | কম মেমোরি ব্যবহার করে কিন্তু বেশি প্রসেসিং সময় নেয়। | মেমোরিতে বেশি স্থান নেয়, কিন্তু প্রসেসিং কম লাগে। |
ব্যবহার করে | Traditional JavaScript, jQuery, বা সাধারণ ওয়েব অ্যাপ। | React, Vue, ইত্যাদি আধুনিক লাইব্রেরি। |
🧠 উদাহরণ:
ধরুন একটি লম্বা লিস্টে আপনি একটি আইটেম পরিবর্তন করলেন:
- Real DOM: পুরো লিস্টটি আবার রেন্ডার করে।
- Virtual DOM: নতুন এবং পুরোনো ভার্চুয়াল DOM তুলনা করে শুধু পরিবর্তিত আইটেমটি রেন্ডার করে।
✅ সারাংশ:
- Virtual DOM ➜ দ্রুত, স্মার্ট এবং পারফরম্যান্স বান্ধব।
- Real DOM ➜ ধীর এবং ভারী, বিশেষ করে ডায়নামিক ইউজার ইন্টারফেসে।
Here’s a clear and simple comparison between Real DOM and Virtual DOM — especially useful for understanding how frameworks like React optimize performance.
🔍 Real DOM vs Virtual DOM
Feature | Real DOM | Virtual DOM |
---|---|---|
Definition | The actual Document Object Model rendered by the browser. | A lightweight copy of the real DOM, stored in memory. |
Update Speed | Slower, as it updates the entire DOM tree directly. | Faster, as it only updates parts that changed (via diffing). |
Performance | Less efficient for frequent updates. | Highly efficient in dynamic and large-scale apps. |
Manipulation | Directly manipulated by JavaScript (e.g., document.getElementById() ) |
React uses Virtual DOM to calculate changes before applying to real DOM. |
Re-rendering | Every DOM update causes a full re-render or repaint. | Only necessary components are re-rendered. |
Memory Usage | Less memory efficient (heavier operations). | More memory usage (stores virtual copy) but reduces processing. |
Used By | Traditional JavaScript, jQuery, vanilla web apps. | React (and similar frameworks like Vue). |
🧠 Example:
Imagine you’re changing one item in a long list:
- Real DOM: Refreshes the entire list.
- Virtual DOM: Compares the new version to the previous one, finds just that one changed item, and updates only that part in the Real DOM.
✅ Summary:
- Virtual DOM = Better performance + minimal DOM manipulation.
- Real DOM = Slower in dynamic UIs due to heavy, direct updates.