আমি এর আগে কমান্ড-কোয়েরি-বিচ্ছেদ (সিকিউএস) এর কথা শুনিনি, তবে মনে হয় এটি একক দায়িত্বের নীতি (এসআরপি) এর সাথে সম্পর্কিত হবে, যেখানে বলা হয়েছে যে কোনও ফাংশন / শ্রেণি আদর্শভাবে কেবল একটি জিনিস এবং একটি জিনিস করার জন্য দায়বদ্ধ হতে হবে। ।
যদি আপনার কমান্ড কোডটি 20 লাইন কোডের হয় এবং কোয়েরি কোডটি অন্য 30 লাইন এবং সেগুলি সমস্তই একটি ফাংশন বডিতে থাকে তবে স্পষ্টতই আপনি এসআরপি লঙ্ঘন করছেন এবং আমি সিকিউএসও ধরে নেব এবং এই দুটি যুক্তিকে একে অপরের থেকে পৃথক করা উচিত ।
যাইহোক, আপনার অনুমানমূলক উদাহরণটি সহ, আমি সম্ভবত একটি কৃপণ পদ্ধতি তৈরি করব যা আপনার আদেশ এবং কোয়েরিকে একত্রিত করবে যাতে কোডের অনেক জায়গায় DRY লঙ্ঘন না হয়। আমি এটিকে এসআরপি (এবং সম্ভবত সিকিউএস) লঙ্ঘন হিসাবে বিবেচনা করব না, কারণ মোড়কের এখনও একটি দায়িত্ব রয়েছে: একটি প্রশ্নের সাথে কমান্ড একত্রিত করা এবং উচ্চতর স্তরের বিমূর্ততা তৈরি করা যা গ্রাস করা সহজ।
আমি মনে করি মোড়ক পদ্ধতি পুরোপুরি গ্রহণযোগ্য সমাধান এবং এটি চিত্রিত করতে, আসুন আপনার উদাহরণটি আরও একধাপ এগিয়ে নেওয়া যাক। আপনাকে যদি 1 এর পরিবর্তে 2 টি ক্যুরি চালাতে হয় এবং তারপরে কোনও কমান্ড অ্যাকশন করতে হয় তবে। সুতরাং আপনার 2 লাইনের কোডটি 6 বা 8 হবে one যদি কোনও একের সাথে অন্যের মধ্যে কিছু ডেটা বৈধতা / পরীক্ষা করা হয়, তবে এখন আপনার কোডের 15 লাইন রয়েছে। আপনি কি একাধিক ফাইলে 15 15 টি লাইন ছিটানোর পরিবর্তে এমন একটি মোড়ক তৈরির বিষয়ে দুবার ভাবেন?