প্রথম পর্ব : আমার প্রেমিকার জন্য চা তৈরী ও MVC এর রেসিপি (Model-View-Controller)

মনে করছি আমি একজন চা বিক্রেতা এবং আমার একজন সুন্দরী এবং রাগী প্রেমিকা আছে যার নাম হল ""বৃষ্টি"" । তো আমি চা বানাই আর সে চা পান করে
তো আমার কাছে চা বানানোর সব ধরনের জিনিসপাতি আছে। যেমন,চা এর লিকার,কাপ,মিল্ক,কেতলী ইত্যাদি।

তো বৃষ্টি এসে একদিন আমাকে অনুরোধ করে বললো ""আমার খুব মাথা ব্যাথা করছে আমাকে এক কাপ চা বানিয়ে দেও না প্লিজ!!!""

তো আমি খুশিতে খুশি হয়ে তার জন্য চা বানাতে শুরু করে দিলাম। প্রথমে কেতলী কে আগুনে বসালাম,পানি দিলাম ও আগুন দিয়ে পানি গরম করে দিলাম । তারপর প্রয়োজনমত চিনি দিলাম (যদি ও সে মিষ্টি তারপরও দিলাম আরকি!!!) । তারপর, প্রয়োজনমত লিকার দিয়ে কাপে ঢেলে দিলাম। সে চা দেখে খুব খুশি এবং চা পান করতে লাগলো।

এখন উপরের সব লেখাতেই আছে সব উত্তর:

১.সবকিছু শুরু হল অনুরোধ (Request) এর মাধ্যমে:   আমার  প্রেমিকা আমাকে চা বানানোর জন্য অনুরোধ করেছি । এবং আমার প্রেমিকা হলো (User),অর্থাৎ Web App এর ক্ষেত্রে কোন ব্যবহারকারী যখন ইউ.আর.এল (URL) প্রবেশ করে কোন পেজ দেখতে চায়।

২.অনুরোধটি যখন আমার কাছে (Controller) আসে!!:   আমার প্রেমিকাকে আমা চা বানিয়ে খাওয়াবো এবং এক্ষেত্রে আমি হলাম (Controller)।

৩.চা বানাবো চ-পাতি/চিনি/পানি (Model) দিয়ে:  আমার কাছে চা বানানোর সবকিছুই আছে । যেমন চিনি/পানি/কেতলী । এবং আমার কাছে থাকা এলিমেন্ট দিয়েই আমি চা বানিয়ে ফেলবো।
আর ওয়েব এ্যাপ এর ক্ষেত্রে এটি কাজ করে: মডেল (Model) টি Controller কে সাহায্য করে ডেটাবেজ হতে ডেটা আনার জন্য  ।

৪. Request টি চলে আসলো:  প্রথমে Controller(আমি) অনুরোধ গ্রহন করি। তারপর চিনি/পানি/কেতলী (Model) তার প্রয়োজনীয় জিনিস গুলো চলে আসে।

৫.এবং ফাইনালী (View):  চা বানানো হলে আমি আমার প্রেমিকাকে (View) [আরে ইনি ই তো আমাকে চা বানানোর জন্য অনুরোধ করেছিলো ]  পরিবেশন করি এবং সে এটা পান করার জন্য প্রস্তুতি নেয়। এবং ওয়েব এপ্লিকেশনের জন্য  User তার অনুরোধ করা পেজ (View) টি তার Browser এ দেখতে পায়।





এতক্ষন  ্আমার ক্ষেত্রে যা ঘটলো:
১. আমার প্রেমিকা আমাকে চা বানাতে অনুরোধ করলো
২.আমি অনুরোধটি গ্রহন করলাম
৩.আমি আমার কেতলীতে পানি গরম করে আমার প্রয়োজনমত চাপাতি/চিনি দিয়ে চা বানিয়ে ফেললাম।
৪. কাপে চা ঢেলে আমার প্রেমিকাকে পরিবেশন করলাম।


একটি ওয়েব এ্যাপ এর ক্ষেত্রে যা ঘটে:
১. একজন ব্যবহারকারী ব্রাউজারের এ্যাড্রেসবারে সাইটের নাম লিখে ওয়েব পেজ দেখার জন্য  অনুরোধ (Requeste) করবে।
২.কন্ট্রোলার (Controller) ঐ রিকুয়েস্ট টি রিসিভ করবে।
৩.এবং মডেল(Model) তার প্রয়োজনীয় ইলিমেন্ট গুলো ডেটাবেজ হতে সংগ্রহ করবে
৪.সর্বশেষ, ব্যবহারকারীর পেজটি ব্রাউজারে দেখাবে (View) ।





Comments