মামলার প্রতিরোধক কী?


17

আজকের টিডিডব্লিউটিএফ নিবন্ধটি লেখকের কাছ থেকে একটি স্বীকারোক্তি দিয়ে শুরু হয়েছে:

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

তারপরে তিনি এমনভাবে এগিয়ে গেলেন যেন পাঠক, স্বাভাবিকভাবেই জানেন যে ফোর-কেস অ্যান্টি-প্যাটার্নটি কী আর কোনও ব্যাখ্যা ছাড়াই প্রয়োজন হয়।

কিন্তু আমি না! রেমি যে "আর্টিকেলগুলির" কথা বলেছি তা আমি দেখিনি, এবং গুগলে (রেমি এর নিবন্ধ ছাড়াও) আমি খুঁজে পেতে পারি এমন একমাত্র উল্লেখযোগ্য রেফারেন্সটি রেমন্ড চেনের অ্যান্টিপ্যাটার্ন - এর জন্য একটি ব্লগ পোস্ট যা আপাতদৃষ্টিতে সম্পর্কিত । যদিও তিনি "ফর-কেস অ্যান্টি-প্যাটার্ন" সংজ্ঞায়িত করেন না।

এই "ফর-কেস অ্যান্টি-প্যাটার্ন" কী যে এই ছেলেরা কথা বলছে এবং কী এটিকে একটি অ্যান্টি-প্যাটার্ন করে?



3
এটি সাধারণত (এবং অনুসন্ধান ইঞ্জিনগুলির মাধ্যমে সন্ধান করা সহজ) লুপ-স্যুইচ অ্যান্টি-প্যাটার্ন হিসাবে পরিচিত
ডেভিড আরনো

উত্তর:


23

"প্যাটার্ন "টি পূর্ববর্তী দৈনিক ডাব্লুটিএফ নিবন্ধে প্রবর্তিত হয়েছিল মূল ধারণাটি হ'ল আপনার লুপ সূচক ভেরিয়েবলের উপর ভিত্তি করে নির্বাচন করে এমন forএকটি caseঅভ্যন্তরের একটি লুপ রয়েছে for

ধরে নেওয়া যায় যে সূচকের ভেরিয়েবলটি লুপের অভ্যন্তরে পরিবর্তন করা যাবে না, (আপনি যে ভাষাটি ব্যবহার করছেন তার উপর নির্ভর করে যা সর্বদা সত্য নয়)) কিছুটা বিশ্লেষণ প্রমাণ করে যে আপনি কার্যকরভাবে forএবং caseসম্পূর্ণরূপে অপসারণ করেছেন তেমন মৃত্যুদন্ড কার্যকর হ'ল এবং সমস্ত কেস ব্লকগুলি কেবল ক্রমানুসারে কার্যকর করা হয়েছিল।


0

এটিকে খুব সহজভাবে বলতে গেলে আপনি দুটি পৃথক প্রবাহ নিয়ন্ত্রণের পদ্ধতি বাসা বাঁধছেন যা কোডটি বোঝা শক্ত করে।

আপনি যদি লুপের জন্য দেখতে পান তবে আপনি সাধারণত ধরে নেন যে লুপের পরিস্থিতি লুপের মধ্যে যুক্তি নিয়ন্ত্রণ করবে। তবে আপনি যদি তার নিজের যুক্তি সহ সমস্ত একটি সম্পূর্ণ কেস স্টেটমেন্টটি বাসাতে থাকেন তবে এটি উইন্ডোটি বাইরে চলে যায়।


1
দুটি নিয়ন্ত্রণ প্রবাহ কাঠামো বাসা বাঁধার সাথে অন্তর্নিহিত কোনও ভুল নেই। কখনও কখনও আপনার প্রয়োজন। তবে এক্ষেত্রে এটি অকেজো।
মনিকা 18

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