ভার্চুয়াল DOM এবং এর অভ্যন্তরীণ

ভার্চুয়াল DOM কি?

ভার্চুয়াল DOM হলো একটা প্রোগ্রামিং ধারণা যেখানে UI এর একটা আদর্শ অথবা “ভার্চুয়াল” প্রতিনিধি মেমোরিতে রাখা হয় এবং তা প্রকৃত DOM এর সাথে মিলিয়ে রাখা হয় ReactDOM এর মতো লাইব্রেরির মাধ্যমে। এই কাজটাকে বলে reconciliation

এই প্রক্রিয়া React এর ঘোষণাভিত্তিক API কে চালু করেঃ আপনি React কে বলবেন কোন state এ আপনি UI কে দেখতে চান আর React নিশ্চিত করবে যাতে DOM সেই state এ থাকে। এই প্রক্রিয়া attribute ম্যানিপুলেশান, ইভেন্ট হ্যান্ডেলিং এবং ম্যানুয়াল DOM আপডেটের মত কাজগুলোকে আলাদা করে দেয়, যা অন্যথায় অ্যাপ তৈরি করতে আপনার নিজের করতে হত।

যেহেতু “ভার্চুয়াল DOM” কোনো নির্দিষ্ট টেকনোলজির চেয়ে অনেকটা প্যাটার্নের মতো, সেজন্য অনেকে বিভিন্ন জিনিস বুঝাতে এটি ব্যবহার করে। React এর জগতে, “ভার্চুয়াল DOM” সাধারণত React elements এর সাথে জড়িত যেহেতু এরা UI এর প্রতিনিধিত্বকারী অবজেক্ট। তবে React আবার “ফাইবার” নামক অভ্যন্তরীণ কিছু অবজেক্ট ব্যবহার করে কম্পোনেন্ট ট্রি সম্পর্কে আরও কিছু তথ্য ধারণ করতে। এগুলোকেও React এ “ভার্চুয়াল DOM” তৈরির অংশ হিসেবে ধরা যেতে পারে।

Shadow DOM আর Virtual DOM কি একই?

না, এগুলো আলাদা। Shadow DOM একটা ব্রাউজার টেকনোলজি যা প্রাথমিকভাবে তৈরি করা হয়েছিল ওয়েব কম্পোনেন্টে ভারিয়াবল এবং CSS স্কোপ করার জন্য। ভার্চুয়াল DOM হল একটা ধারণা যা লাইব্রেরির মাধ্যমে জাভাস্ক্রিপ্টে তৈরি করা হয়েছে ব্রাউজার API এর উপরে।

“React Fiber” কি?

ফাইবার হলো React 16 এর নতুন reconciliation ইঞ্জিন। এর মূল লক্ষ্য হলো ভার্চুয়াল DOM এর ক্রমবর্ধমান render করা। আরও পড়ুন.