Browser কি? এক কথায় উত্তর হচ্ছে, Browser একটি Client Side. আমরা সবাই জানি যে Client Side-এর কাজ কি? আবারো বলছি Client Side-এর কাজ হচ্ছে আমাদের কাছথেকে Request নেওয়া এবং সার্ভার থেকে Response গ্রহণ করে আমাদের দেখানো। আমরা Browser-এ ডাটাগুলো যেভাবে সুন্দর করে সাজানো দেখতে পাই, সার্ভার থেকে কিন্তু ডাটাগুলো এতো সুন্দর করে সাজানো-গুছানোভাবে আসে না। সার্ভার থেকে ডাটাগুলো Browser-এর কাছে JSON ফরম্যাটে আসে। তাহলে এখন প্রশ্ন হলো Browser ডাটাগুলো কিভাবে এতো সুন্দর করে আমাদের কাছে Represent করে? আজকের আলোচনায় আমরা সেটিই জানবো।
Browser কিছু সুনির্দিষ্ট ধাপ অনুসরণ করে কাজ করে। Browser-এর কিছু Layer বা স্তর আছে।
প্রথম স্তরটি হলো User Interface বা Ui. আমরা যা ব্রাউজারে দেখতে পাই সেটিই UI. আরো পরিষ্কার করে বললে, আমরা কোনো ওয়েবসাইটে প্রবেশ করলে যা দেখি সেটিই UI.
এরপরের স্তরটি হলো Browser Engine. এখানে সার্ভার থেকে আসা ডাটাগুলো DOM-এ রূপান্তরিত হয়। DOM মানে হলো Documentation Object Model. Browser Engine-ও আমরা দেখতে পারি বা Control করতে পারি। এছাড়াও Browser Engine -এর আরেকটি অংশ থাকে, যা হলো Data Persistence. এখানে আমাদের কিছু ডাটা জমা থাকে, যার ফলে আমরা Facebook বা অন্য Social Media তে বারবার Log in করতে হয়না।
এরপরের Layer-টি হলো Render Engine. একটি ব্রাউজারের মূল কাজ Render Engine-এ হয়ে থাকে, ফলে এটি খুবই জটিল। ব্রাউজারে যতক্ষণ কাজ হয় ততক্ষনই ডাটা Change হতে থাকে, ফলে সবসময় এটি Update হতে থাকে। Render Engine-এ আবার কিছু অংশ আছে:
একটি হচ্ছে Networking. সার্ভার এর সাথে আমরা কোন HTTP Method-এ আমরা Communicate করি, তার সমস্ত কাজ করে এই Networking.
এরপরে আছে JS Interpreter. আমরা জানি যে, ব্রাউজার শুধুমাত্র JavaScript-ই বুজে। ব্রাউজারে কোনো ডাটা Output হিসেবে আসার পরে আমরা যদি সেই ডাটা Change বা Manipulate করতে চাই, সেই কাজটি করে JS Interpreter.
এরপরে আছে UI Backend. আমরা UI তে যেসব Button, Text-Box, Radio-Button দেখি, এই Component-গুলি HTML Tag লিখে তৈরী করা হয়। এই Tag-গুলো আমাদের UI বা User Interface-এ রূপান্তরের কাজটি করে UI Backend.
আশা করি ব্যাপারগুলো বুজতে পেরেছেন। আপনার মতামত কমেন্টে জানাতে ভুলবেন না। ধন্যবাদ।

