Virtual DOM কিভাবে কাজ করে

প্রিয় ডেভেলপারস, আসসালামু আলাইকুম আশা করি আপনারা সবাই ভালো আছেন আজকে ব্লগে Virtual DOM কীভাবে কাজ করে তা নিয়ে বিস্তারিত আলোচনা করবো, তাহলে চলুন শুরু করা যাক

Virtual DOM কিভাবে কাজ করে

Virtual DOM জানার আগে DOM সম্পর্কে বিস্তারিত জানতে হবে, তাহলে DOM কি? DOM এর পূর্ণরুপ হলো Document Object Model (ডকুমেন্ট অবজেক্ট মডেল) সহজে বলা যায়, DOM হচ্ছে XML বা HTML Document এর জন্য একটা প্রোগ্রামিং ইন্টারফেস এবং একটি ডকুমেন্টের স্ট্রাকচারকে Object Tree হিসেবে উপস্থাপন করেএই ওয়েব ডকুমেন্টের মধ্যে প্রত্যেকটি UI Element নোড হিসেবে কাজ করে এবং যা জাভাস্ক্রিপ্টের মাধ্যমে মডিফাই এবং পেজের সঙ্গে ইন্ট্যার্যাক্ট সহজে করা যায়DOM যেহেতু অবজেক্ট কে উপস্থাপন করে এবং সেখানেও জাভাস্ক্রিপ্টের অন্যান্য অবজেক্টের মতোই বিশেষ কিছু Property Method রয়েছেযেগুলোর সাহায্যে আমরা আমাদের ওয়েব পাইজের এ্যাক্সেস করতে পারি এবং প্রয়োজনুসারে পরিবর্তন বা পরিবর্ধন করতে পারি

 

Virtual DOM হলো Real DOM এর Lightweight copyযা সাধারণত virtually তৈরি হয় একটি DOMযেখানে Real DOM এর মতো সকল Properties এক্সেস রয়েছে কিন্তু Virtual DOM সরাসরি ডকুমেন্ট এর লেআউট পরিবর্তন করতে পারে না Virtual DOM কীভাবে কাজ করে নিম্নে ধাপে ধাপে উল্লেখ করা হলো

 

📌 যখন কোন এ্যাপ্লিকেশন প্রথমবার ব্রাউজারে রান হয়, বা এ্যাপ্লিকেশনের কোন অবস্থান পরিবর্তন হয়তখনি DOM এর একটি lightweight কপি তৈরি হয়, যাকে Virtual DOM বলেআর এই Virtual DOM টি হলো জাভাস্ক্রিপ্টের একটি অবজেক্ট যা Real DOM মডেলের স্ট্রাকচারের প্রতিরূপ

 

📌 এ্যাপ্লিকেশনে যখন কোন ইউজার ইন্টারয়েকশন, ডাটা ফেচিং, আপডেটিং ইত্যাদি সংঘটিত হলে, নতুন একটি Virtual DOM তৈরি হয় এবং নতুন Virtual DOM টি পূর্ববর্তিটির সাথে তুলনা করে এবং পার্থক্য পরিবর্তগুলো চিহ্নিত করেআর এই প্রক্রিয়াকে Reconciliation (রিকনসিলিয়েশন) বা (Deff) ডিফিং বলে

 

📌 Reconciliation (রিকনসিলিয়েশন) বা (Deff) ডিফিং প্রক্রিয়ার সময়, অ্যালগোরিদম প্রক্রিয়ার পরিবর্তিত এবং আপডেট করতে প্রয়োজনীয় নির্দিষ্ট উপদানগুলি চিহ্নিত করেআর এই প্রয়োজনীয় পরিবর্তনগুলো “Deff বা প্যাচএর মাধ্যমে বর্ণনা করে

 

📌 প্রতিটি পরিবর্তনের ক্ষেত্রে এ্যাপ্লিকেশন এর Real DOM সরাসরি আপডেট করার পরিবর্তে Real DOM এর lightweight কপি Virtual DOM পয়োজনীয় সমস্ত পরিবর্তন এবং আপডেটগুলো একটি ব্যাচে সংগ্রহ করেআর এই নির্ধারিত পরিবর্তনের ব্যাচটি Real DOM এর সাথে তুলনা করে যেখানে পরিবর্তন এবং আপডেট করা প্রয়োজন শুধুমাত্র তাই আপডেট করে এবং আপডেটকৃত নতুন অবস্থা UI তে প্রদর্শিত হয়

 


আশা করি আপনি আজকের এই ব্লগটি মনোযোগ সহকারে পড়েছেন আজকের ব্লগটি আপনার কাছে কেমন লেগেছে অবশ্যই  কমেন্ট করে জানাবেন, আর যদি কোন ভূল হয়ে থাকে তাহলে ক্ষমা সুন্দর দৃষ্টিতে দেখবেন এবং কোথায় ভূল হয়েছে কমেন্ট করে জানাবেনপোষ্টে উল্লিখিত কোনো অংশ যদি বুঝতে সমস্যা হয়, তাহলে কমেন্ট বক্সে জানিয়ে দিনইনশাআল্লাহ্‌, সমস্যা সমাধানের চেষ্টা করবো আর ওয়েবসাইটটি বন্ধুদের মাঝে শেয়ার করবেন আজকের মতই এখানেই বিদায় নিলাম, ইনশাআল্লাহ দেখা হবে অন্য কোন ব্লগে ভালো থাকবেন সুস্থ থাকবেন আল্লাহ হাফেয

About the author

AHSHAN HABIB
Hello! I am Ahshan Habib. Blogging is My Hobby and I Would Like to Share my Knowledge With Everyone. Here I Will Share Every Day About Education, Technology, and Programming. So Stay With us And Share my Page on Your Social Platform.

Post a Comment