জাঙ্গো এবং মডেল ভিউ কন্ট্রোলার প্যাটার্নের মধ্যে ডিফারেন্সগুলি কোথায় কেউ আমাকে ব্যাখ্যা করতে পারে?
কার্যকরীভাবে, আমরা এই পার্থক্যগুলি থেকে কী আশা করতে পারি - উদাহরণস্বরূপ, জেলাগুলির সাথে তুলনামূলকভাবে আলাদাভাবে কাজ করে কী?
জাঙ্গো এবং মডেল ভিউ কন্ট্রোলার প্যাটার্নের মধ্যে ডিফারেন্সগুলি কোথায় কেউ আমাকে ব্যাখ্যা করতে পারে?
কার্যকরীভাবে, আমরা এই পার্থক্যগুলি থেকে কী আশা করতে পারি - উদাহরণস্বরূপ, জেলাগুলির সাথে তুলনামূলকভাবে আলাদাভাবে কাজ করে কী?
উত্তর:
জ্যাঙ্গো বুক অনুসারে , জাঙ্গো এমভিসি প্যাটার্নটিকে এমভিসি কাঠামো বলা যেতে পারে নিচের দিকে অনুসরণ করে।
জ্যাঙ্গোকে একটি এমটিভি কাঠামো হিসাবে উল্লেখ করা হয়েছে কারণ নিয়ামক নিজেই ফ্রেমওয়ার্কটি পরিচালনা করেন এবং বেশিরভাগ উত্তেজনা মডেল, টেম্পলেট এবং দৃশ্যে ঘটে।
আপনি এমটিভি / এমভিসি সম্পর্কে এখানে আরও পড়তে পারেন:
এমটিভি (বা এমভিসি) বিকাশ প্যাটার্ন
আপনি এই ধরনের পাগল নেভিগেশন রুবি হিসাবে অন্যান্য MVC ওয়েব উন্নয়ন পরিকাঠামোর সাথে পরিচিত হন, আপনি জ্যাঙ্গো মতামত বিবেচনা করা হতে পারে কন্ট্রোলার এবং জ্যাঙ্গো টেমপ্লেট হতে মতামত ।
এমভিসির বিভিন্ন ব্যাখ্যা দ্বারা এটি একটি দুর্ভাগ্যজনক বিভ্রান্তি।
এমভিসির জ্যাঙ্গোর ব্যাখ্যায়, ভিউটি সেই ডেটা বর্ণনা করে যা ব্যবহারকারীর কাছে উপস্থাপিত হয়; এটি কেবল ডেটা দেখতে কেমন তা নয়, তবে কোন ডেটা উপস্থাপন করা হয়েছে তা।
বিপরীতে, রুবেল অন রেলস এবং অনুরূপ ফ্রেমওয়ার্কগুলি পরামর্শ দেয় যে কন্ট্রোলারের কাজের মধ্যে সিদ্ধান্ত নেওয়া হয় যে কোন তথ্য ব্যবহারকারীর কাছে উপস্থাপিত হবে, যখন ভিউটি কঠোরভাবে ডেটা কীভাবে দেখায়, কোন তথ্য উপস্থাপন করা হয় তা নয়।
জ্যাঙ্গো এফএকিউ নিজেই শুরু করার জন্য একটি শালীন জায়গা:
এমভিসির আমাদের ব্যাখ্যায়, "ভিউ" সেই ডেটাটি বর্ণনা করে যা ব্যবহারকারীর কাছে উপস্থাপিত হয়। এটি ডেটা দেখতে কেমন তা নয়, তবে কোন ডেটা উপস্থাপন করা হয়েছে তা। আপনি কোন ডেটা দেখছেন তা আপনি কীভাবে দেখবেন তা এই দর্শনটি বর্ণনা করে। এটি একটি সূক্ষ্ম পার্থক্য।
...
তদ্ব্যতীত, উপস্থাপনা থেকে বিষয়বস্তু পৃথক করা বুদ্ধিমান - যা এখানে টেমপ্লেট আসে D জ্যাঙ্গোতে একটি "ভিউ" বর্ণিত হয় যা কোন ডেটা উপস্থাপন করা হয়, তবে একটি দৃশ্য সাধারণত কোনও টেমপ্লেটে প্রতিনিধিত্ব করে, যা ডেটা উপস্থাপন করা হয় তা বর্ণনা করে।
তাহলে "নিয়ামক" কোথায় ফিট? জ্যাঙ্গোর ক্ষেত্রে সম্ভবত এটি কাঠামোটি নিজেই রয়েছে: জাজানো ইউআরএল কনফিগারেশন অনুসারে যথাযথ দৃশ্যে একটি অনুরোধ প্রেরণকারী যন্ত্রপাতি।
যদি আপনি সংক্ষিপ্ত শব্দটির জন্য ক্ষুধার্ত হন তবে আপনি বলতে পারেন যে জ্যাঙ্গো একটি "এমটিভি" কাঠামো - এটি, "মডেল", "টেমপ্লেট" এবং "দেখুন"। এই ভাঙ্গন অনেক বেশি অর্থবোধ করে।
মনে রাখবেন যে "মডেল ভিউ কন্ট্রোলার" কেবল একটি প্যাটার্ন, অর্থাত্ একটি সাধারণ আর্কিটেকচারকে বর্ণনা করার চেষ্টা। সুতরাং আরও ভাল প্রশ্ন হতে পারে "জ্যাঙ্গো মডেল ভিউ কন্ট্রোলার প্যাটার্নটি কতটা ফিট করে?"
যখন আপনি কোড করেন, ফ্রেমওয়ার্কের টুকরোগুলির নাম সম্পর্কে চিন্তা না করে, সেখানে কোনও সংবেদনশীল পার্থক্য নেই, উদাহরণস্বরূপ আরআর। তবে এটি আপনার দেওয়া ব্যবহারের উপর নির্ভর করে models
, যেহেতু জাজানোতে এগুলিতে সহজেই কিছু যুক্তি থাকে যা অন্য কাঠামোর উপর নিয়ামক স্তরে থাকবে।
view
জ্যাঙ্গো উপর আনার ডেটার জন্য প্রশ্নের একটি সেট, তাদের টেমপ্লেটে পাস থাকে।
views
জ্যাঙ্গো একটি ভালো কিছু হয় controller
MVC এবং একটি template
জ্যাঙ্গো আরও সম্ভবত একটি হলviews
এমভিটি-তে, কোনও URL- তে একটি অনুরোধ একটি ভিউতে প্রেরণ করা হয়। এই ভিউটি মডেলটিতে কল করে, ম্যানিপুলেশনগুলি সম্পাদন করে এবং আউটপুট জন্য ডেটা প্রস্তুত করে। ডেটা এমন কোনও টেম্পলেটের কাছে প্রেরণ করা হয় যা প্রতিক্রিয়া হিসাবে নির্গত হয়। আদর্শভাবে ওয়েব ফ্রেমওয়ার্কগুলিতে, কন্ট্রোলারটি দৃশ্য থেকে লুকানো থাকে।
এখানেই পার্থক্যটি এমভিসি থেকে: এমভিসিতে ব্যবহারকারী গুইয়ের সাথে যোগাযোগ করে, নিয়ামক অনুরোধটি পরিচালনা করে এবং ফলাফলটি ব্যবহারকারীর কাছে প্রদর্শন প্রদর্শনের জন্য মডেলটি এবং ভিউয়ের প্রশ্নের সন্ধান করে।