এমভিভিএম নাকি এমভিসি? ডাব্লুপিএফ এবং এএসপি.এনইটি জন্য একই ক্লাসের সেট ব্যবহার করতে চান


11

ডিজাইন প্যাটার্নসের ক্ষেত্রে আমি নবাগত। যখন আমি একটি নতুন বাজ, এমভিভিএম শুনছি তখন আমি এমভিসি শিখতে শুরু করেছি।

আমি একটি ক্লায়েন্টের জন্য বিকাশিত একটি পুরানো ইনভেন্টরি এবং চালানের অ্যাপ্লিকেশনটিকে নতুন করে ডিজাইন করে এই উভয়ের অন্তর্দৃষ্টি শিখতে চাই। আমি উইন্ডোজ ভিত্তিক ডাব্লুপিএফ অ্যাপ্লিকেশন এবং ওয়েব ভিত্তিক সংস্করণ উভয়ই লিখতে চাই। আমি যদি সম্ভব হয় একই শ্রেণীর সেটটি ব্যবহার করতে চাই, যদি না হয় তবে কমপক্ষে সামান্য পরিবর্তন করে ification

আমি বেশ কয়েকটি নিবন্ধ পড়েছি, তবে আমি সেখানে আর্কিটেকচার এবং .NET 3.5 & 4 এর উচ্চ স্তরের ধারণাগুলি অনুসরণ করছি না। আমার বাস্তব জীবনের প্রকল্পে আমার যা প্রয়োজন তা কেবল ডিজাইন করেই আমি ধাপে ধাপে যেতে চাই।

এমভিভিএম-এর কোনও সহজ ধাপে ধাপে উল্লেখ আছে? এমভিভিএম কি সুপার সেট বা এমভিসির একটি উপ-সেট? আমার অ্যাপ্লিকেশনটির উইন্ডোজ এবং ওয়েব সংস্করণগুলির জন্য কোন প্যাটার্নটি আধুনিক এবং কোনটি চয়ন করা উচিত?

কিছু নির্দিষ্ট ক্লাস রয়েছে যা আমার সাথে ভিউয়ের সাথে খুব কমই সংযুক্ত হওয়া দরকার। সেক্ষেত্রে এমভিভিএম পদ্ধতিতে একই শ্রেণি নকশা করা অতিরিক্ত শ্রম হিসাবে প্রমাণিত হবে।

উত্তর:


11

এমভিভিএম-এর কোনও সহজ ধাপে ধাপে উল্লেখ আছে?

হ্যা এখানে. এখানে একবার দেখুন।

এমভিভিএম কি সুপার সেট বা এমভিসির একটি উপ-সেট?

এমভিভিএম এমভিসি পরিবারের অন্তর্ভুক্ত, সুতরাং, আপনি যদি মোটেও বলতে পারেন এটি একটি উপসেট। নীচের ব্যবসায়ের যুক্তি থেকে ইউআই ডিকুয়াল করার এটি একটি বৈকল্পিক। আমি এটিকে এমভিসির ভাইবোন হিসাবে বর্ণনা করব। ওওপির প্রথম দিনগুলি থেকে লোকেরা তাদের যুক্তি থেকে ইউআই ডিক্লোল করার উপায়গুলি সন্ধান করছে। এমভিসি হ'ল প্রথম প্রত্নতাত্ত্বিক যা বিবর্তিত হয়েছিল। এটি বেশ সহজ, যদিও বেশিরভাগ লোকেরা এটি সঠিকভাবে পায় না। দৃষ্টিভঙ্গিটি কেবলমাত্র মডেলটির একজন পর্যবেক্ষক এবং যখন প্রয়োজন তখন এটি কল করে। মডেলটির সাথে যোগাযোগ করার জন্য নিয়ামকটি কেবল একটি কৌশল, উদাহরণস্বরূপ যখন আপনার কোনও বিনিময়যোগ্য আচরণের প্রয়োজন হয় (অর্থাত্ রিডনলি কন্ট্রোলার, অ্যাডমিনকন্ট্রোলার)। এমভিসি অত্যন্ত সাফল্যময় এবং এটি প্রয়োগ করা সত্যিই একটি ভাল অনুশীলন।

MVVM একটি বিশেষ ধরনের যেমন মার্টিন জালিয়া দ্বারা বর্ণিত, সবচেয়ে মূল্যবান খেলোয়াড় প্যাটার্ন । এমভিপি ভিউটিকে যতটা সম্ভব বোবা রাখার চেষ্টা করে (তবুও ব্যবহারকারীর ইনপুট ইত্যাদি গ্রহণের সময়), ফলে পরীক্ষারযোগ্যতা বাড়ায়। এটি দর্শকের একটি বিমূর্তকরণ এবং উপস্থাপককে দেওয়া ইন্টারঅ্যাকশন-লজিকের লক্ষ্য করে। উপস্থাপিকা সম্পূর্ণরূপে মডেল / ব্যবসায়িক যুক্তির সাথে যোগাযোগ করে এবং ভিউ আপডেট করে। মার্টিন ফওলর তাঁর উপস্থাপনা মডেল প্যাটার্নে এমভিভিএমকে বেশ বর্ণনা করেছেন।

ভিউমোডেলটিতে দৃশ্যটি সম্পূর্ণ বিমূর্ত হয়ে যায়। যখন Viewকোনও সম্পত্তির ViewModelপ্রয়োজন হয় , প্রয়োজনগুলিও এটির সাথে থাকা দরকার। এটি (দ্য ভিউমোডেল) বোঝানো হচ্ছে অন্তর্নিহিত ইউআই-প্রযুক্তি থেকে সম্পূর্ণ বিচ্ছিন্ন, একটি বিমূর্ততা। ভিউ এবং ভিউমোডেলের মধ্যে যোগাযোগের জন্য, একটি সিঙ্ক্রোনাইজেশন প্যাটার্ন ব্যবহার করা প্রয়োজন (অর্থাত্ পর্যবেক্ষক)। রাজ্যহীন ওয়েব পরিবেশে এটি সম্পাদন করা সহজ নয়। এমভিভিএম এমভিপি থেকে আলাদা হয়, কারণ ভিউটি আর আপনার মডেল / ব্যবসায়িক যুক্তির সাথে আবদ্ধ হয় না তবে পরিবর্তে ভিউমোডেলের সাথে আবদ্ধ হয়।

আমার অ্যাপ্লিকেশনটির উইন্ডোজ এবং ওয়েব সংস্করণগুলির জন্য কোন প্যাটার্নটি আধুনিক এবং কোনটি চয়ন করা উচিত?

তত্ত্বের উপস্থাপনা মডেল (এমভিভিএম-মত) ব্যবহারের ইউআই-প্রযুক্তি থেকে সম্পূর্ণ স্বাধীন হওয়া উচিত। তবে সিঙ্কোনাইজেশন দিকটি কভার করা দরকার covered এটি ডাব্লুপিএফের সাথে কমান্ড এবং সম্পত্তিগুলিতে আবদ্ধ হয়ে সহজেই করা যায়, যেখানে সিঙ্ক্রোনাইজেশন আঠালো ইতিমধ্যে উপস্থিত রয়েছে। এএসপি.এনইটি-র সাথে এটি একটি ভিন্ন গল্প। তবে কোডপ্রজেক্টে একটি নিবন্ধ আছে যা সমস্ত উইন্ডোজ ইউআই প্রযুক্তির সাথে উপস্থাপনা মডেল প্যাটার্ন ব্যবহার করে। একবার দেখুন।


4

জীবনচক্র সংক্রান্ত সমস্যা এবং পৃষ্ঠাগুলির পোস্টের মধ্যে অবস্থান রাখার প্রয়োজনীয়তার কারণে, আপনি ওয়েব এবং ডাব্লুপিএফ এর মধ্যে আপনার কোনও ইউআই কোডের 100% পুনরায় ব্যবহার করা খুব কঠিন মনে হবে। এমভিভিএমের জন্য প্রয়োজনীয় এমন শক্তিশালী ডেটা বাঁধাই অ্যাসপটনে নেই, এছাড়াও অনেকগুলি যুক্তিবিজ্ঞানকে আজকাল jscript এ চালানো দরকার কারণ লোকেরা আশা করে যে কোনও পোস্টব্যাকের প্রয়োজন ছাড়াই ইউআই নিজের স্ব আপডেট করতে পারে।

আপনি যদি সিলভারলাইট ব্যবহার করতে পারতেন তবে আপনার জীবন অনেক কম জটিল হবে :-)

একইভাবে আপনি ইউআই এর সাধারণ বিটগুলির জন্য আপনার ডাব্লুপিএফ অ্যাপ্লিকেশনটিতে কোনও ওয়েব-ব্রাউজার হোস্ট করতে পারেন?


সিলভারলাইট দিয়ে আমি কী সুবিধা পেতে পারি?
পি কে

1
@ পিআরকে, সিলভারলাইট আপনাকে ডাব্লুপিএফের যা কিছু করতে দেয় তা বেশিরভাগ ক্ষেত্রে করতে দেয় এবং আপনি যদি আপনার সমস্ত "ওয়েব" ব্যবহারকারীদের এটি ইনস্টল করতে পারেন তবে ওয়েবে অ্যাক্সেস করা এমন একটি সমাধান তৈরি করতে এবং ওয়েব অ্যাপের মতো "অনুভব" করতে দেয়।
আয়ান

4

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.