প্যাটার্নগুলি ব্লক তৈরি করছে না - সুতরাং আমার এমভিসি / এমভিপি নিদর্শনগুলিতে কোনও অ্যাপ তৈরি করা উচিত নয়?


9

আমি এই পৃষ্ঠাটি ডিজাইনের ধরণগুলি এবং আপনার কোডটি লেখার সময় তাদের সাথে কীভাবে আচরণ করা উচিত সে সম্পর্কে পড়েছি । আমার বুঝতে থেকে, লিঙ্কটিতে শিরোনাম হিসাবে বলা হয়েছে:

প্যাটার্নগুলি ব্লক তৈরি করছে না।

আমি যদি সঠিকভাবে বুঝতে পারি তবে এর অর্থ এটি না করা পর্যন্ত কোনও ডিজাইনের প্যাটার্ন ব্যবহার না করা, সঠিক? আপনি স্ট্র্যাটেজি প্যাটার্নটি ব্যবহার করতে যাচ্ছেন বলে শুরু করবেন না, আপনি কিছু কোড না লিখে অপেক্ষা করুন এবং কৌশল প্যাটার্নটি যদি আপনার নকশার জন্য উপলব্ধি করে, তবে এটি ব্যবহার করুন।

আমি যখন জিইআইআই অ্যাপ্লিকেশনগুলি তৈরি করি তখন কি আমি এমসিভি / এমভিপি প্যাটার্নটিকে একইভাবে ব্যবহার করি? সম্পর্কিত লিঙ্কগুলি থেকে, এটি বলে যে এটি একটি স্থাপত্য নিদর্শন।

মনে করুন আমি যদি কোনও জিইউআই অ্যাপ্লিকেশন তৈরি করি এবং আমি এমসিভি / এমভিপি প্যাটার্নটি ব্যবহার না করি তবে আমার কোডটি পরিষ্কার, পঠনযোগ্য এবং রক্ষণাবেক্ষণযোগ্য, এটি এখনও একটি কোড গন্ধ / খারাপ ডিজাইন যা আমি এমসিভি / এমভিপি প্যাটার্নটি ব্যবহার করি নি ?

উত্তর:


18

আমি যদি সঠিকভাবে বুঝতে পারি তবে এর অর্থ এটি না করা পর্যন্ত কোনও ডিজাইনের প্যাটার্ন ব্যবহার না করা, সঠিক?

হ্যাঁ.

আপনি স্ট্র্যাটেজি প্যাটার্নটি ব্যবহার করতে যাচ্ছেন বলে শুরু করবেন না, আপনি কিছু কোড না লিখে অপেক্ষা করুন এবং কৌশল প্যাটার্নটি যদি আপনার নকশার জন্য উপলব্ধি করে, তবে এটি ব্যবহার করুন।

হ্যাঁ. প্রযুক্তিগতভাবে, আপনি বুঝতে পারেন যে আপনি কোনও কোড লেখার আগে কৌশল প্যাটার্নটি উপযুক্ত, তবে এটি হওয়া উচিত কারণ আপনি আসল সমস্যাটি নিয়ে ভাবছিলেন এবং সেই সমস্যার সমাধান সমাধানের নকশা তৈরি করছিলেন, যা আমি ধরে নিয়েছি আপনি যা বোঝাতে চেয়েছিলেন তা।

আমি যখন জিইআইআই অ্যাপ্লিকেশনগুলি তৈরি করি তখন কি আমি এমসিভি / এমভিপি প্যাটার্নটিকে একইভাবে ব্যবহার করি? সম্পর্কিত লিঙ্কগুলি থেকে, এটি বলে যে এটি একটি স্থাপত্য নিদর্শন।

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

এও মনে রাখবেন যে "এমভিসি / এমভিপি" একটি একক প্যাটার্ন নয়, তবে সম্পর্কিত নিদর্শনগুলির একটি খুব বিশাল পরিবার, এবং "এমভিসি" বা "এমভিপি" বা "এমভিভিএম" বা বাকি অংশগুলি ঠিক কী হিসাবে গণনা করা হয়েছে সে সম্পর্কে কোনও usক্যমত্য নেই সম্পর্কিত বর্ণমালা স্যুপ।

মনে করুন আমি যদি কোনও জিইউআই অ্যাপ্লিকেশন তৈরি করি এবং আমি এমসিভি / এমভিপি প্যাটার্নটি ব্যবহার না করি তবে আমার কোডটি পরিষ্কার, পঠনযোগ্য এবং রক্ষণাবেক্ষণযোগ্য, এটি এখনও একটি কোড গন্ধ / খারাপ ডিজাইন যা আমি এমসিভি / এমভিপি প্যাটার্নটি ব্যবহার করি নি ?

মোটেও নয়, কারণ প্রতিটি জিইউআই আবেদনের জন্য এমভিসি / এমভিপি / ইত্যাদি সঠিক নয়। উদাহরণস্বরূপ, কিছু জিইআইআই এত সহজ হতে পারে যে এটি সম্পূর্ণ ওভারকিল হবে, বা কিছু জিইউআই'র "মডেল" স্থাপনের জন্য কোনও ধ্রুবক অবস্থা নাও থাকতে পারে There ভাল জিইউআই সফ্টওয়্যার লেখার একমাত্র উপায় নয়।

এছাড়াও, একটি "কোড গন্ধ" এর অর্থ সাধারণত কোডের নির্দিষ্ট স্নিপেট সম্পর্কে কিছু থাকে যা কোনও বৃহত্তর সমস্যার লক্ষণ হতে পারে। যদি আপনার সমস্ত কোড "পরিষ্কার, পঠনযোগ্য এবং রক্ষণাবেক্ষণযোগ্য" হয়, কোনও ব্যতিক্রম ছাড়াই, তবে প্রায় সংজ্ঞা অনুসারে আপনার কোনও কোডের গন্ধ নেই (সম্ভবত কয়েকটি "ভুয়া পজিটিভ" কোড গন্ধ রয়েছে যা কোনও আসল সমস্যা নির্দেশ করে না don't )।

সুতরাং আপনার প্রশ্নের শিরোনামের উত্তর দেওয়ার জন্য: "এমভিসি / এমভিপি প্যাটার্নটি কীভাবে আচরণ করবেন?", আমি বলব: কেন সেই নিদর্শনগুলি এত জনপ্রিয়, অর্থাৎ তারা কী সমস্যাগুলি সমাধান করার চেষ্টা করছেন তা পড়ুন, যাতে ভবিষ্যতে আপনার সর্বশেষ সমস্যাটি সেই নিদর্শনগুলির দ্বারা সমাধান করা যেতে পারে কিনা তা আপনি বলতে পারেন।

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