প্রোগ্রামিং কাজ সম্পর্কে
আমি মনে করি এর উত্তর দেওয়ার সবচেয়ে সহজ উপায় হ'ল ওওপি কয়েক বছর ধরে যে অগ্রগতি করেছে তা বোঝা। ওওপি-তে সমস্ত কিছু (এবং সর্বাধিক প্রোগ্রামিং প্যারাডাইমগুলি, সেই বিষয়ে) মডেল করা হয়েছে কাজটি করা প্রয়োজন ।
যতবারই কোনও পদ্ধতি কল করা হয়, কলারটি বলছে "আমি এই কাজটি করতে জানি না, তবে আপনি কীভাবে জানেন, তাই আপনি আমার জন্য এটি করেন।"
এটি একটি অসুবিধা উপস্থাপন করেছে: যখন কল করা পদ্ধতিটি সাধারণত কাজটি কীভাবে করতে হয় তা জানে তবে কী হয় না? আমাদের যোগাযোগের একটি উপায়ের দরকার ছিল "আমি আপনাকে সহায়তা করতে চেয়েছিলাম, আমি আসলেই করেছি, তবে আমি এটি করতে পারি না।"
এটির যোগাযোগের প্রাথমিক পদ্ধতিটি ছিল কেবল একটি "আবর্জনা" মান ফিরিয়ে দেওয়া। হতে পারে আপনি ইতিবাচক পূর্ণসংখ্যার প্রত্যাশা করতে পারেন, সুতরাং তথাকথিত পদ্ধতিটি একটি নেতিবাচক সংখ্যা প্রদান করে। এটি সম্পাদনের অন্য উপায়টি ছিল কোথাও একটি ত্রুটির মান সেট করা। দুর্ভাগ্যক্রমে, উভয় উপায়ে বয়লারপ্লেটের ফলে -আমাকে-চেক-ওভার-এখানে-তৈরি-করতে-নিশ্চিত-সবকিছুর-কোশের কোডের ফলাফল হয়েছিল। জিনিসগুলি আরও জটিল হওয়ার সাথে সাথে এই সিস্টেমটি পৃথক হয়ে পড়ে।
একটি ব্যতিক্রমী সাদৃশ্য
ধরা যাক আপনার একটি ছুতার, একটি নদীর গভীরতানির্ণয় এবং একটি বৈদ্যুতিনবিদ রয়েছে। আপনি আপনার ডোবা ঠিক করতে প্লাম্বার করতে চান, তাই তিনি এটি একবার দেখুন। এটি খুব কার্যকর নয় যদি তিনি কেবল আপনাকে বলেন, "দুঃখিত, আমি এটি ঠিক করতে পারি না It's এটি ভেঙে গেছে।" হেল, এটি আরও খারাপ যদি তিনি একবার নজর রাখেন, চলে যান এবং আপনাকে একটি চিঠি মেইল করে বলেন যে সে ঠিক করতে পারে না। এখন আপনাকে নিজের মেইল পরীক্ষা করতে হবে এমনকি আপনি জানতে চান যে তিনি যা চান তা করেননি didn't
আপনি যা পছন্দ করেন তা হ'ল তাকে আপনাকে বলতে হবে, "দেখুন, আমি এটি ঠিক করতে পারিনি কারণ আপনার পাম্পটি কাজ করছে না বলে মনে হচ্ছে" "
এই তথ্যের সাহায্যে আপনি সিদ্ধান্ত নিতে পারেন যে আপনি চান বৈদ্যুতিনবিদ সমস্যার দিকে নজর দিন the সম্ভবত বৈদ্যুতিনবিদ ছুতার সম্পর্কিত কিছু আবিষ্কার করবে এবং আপনাকে ছুতার এটি ঠিক করতে হবে।
হেক, আপনি এমনকি আপনি একটি তাড়িতী, আপনি হয়ত জানেন না হয়ত জানেন না যারা আপনার যা দরকার। আপনি কোনও বাড়ি মেরামত ব্যবসায় কেবলমাত্র মধ্যম-পরিচালনা এবং আপনার ফোকাস নদীর গভীরতানির্ণয়। সুতরাং আপনি সমস্যার বিষয়ে মনিবকে বলুন এবং তারপরে তিনি বৈদ্যুতিনবিদকে এটি ঠিক করতে বলেছেন।
মডেলিংয়ের ব্যতিক্রমগুলি এটিই: ডিকোপলড ফ্যাশনে জটিল ব্যর্থতা মোড। প্লাম্বারটি বৈদ্যুতিনবিদ সম্পর্কে জানতে হবে না he এমনকি এটিরও জানা প্রয়োজন নয় যে চেইন আপ করা কেউ সমস্যাটি সমাধান করতে পারে। তিনি যে সমস্যার মুখোমুখি হয়েছেন সে সম্পর্কে কেবল রিপোর্ট করেন।
সুতরাং ... একটি বিরোধী প্যাটার্ন?
ঠিক আছে, তাই বুঝতে বিন্দু ব্যতিক্রম প্রথম ধাপ। পরেরটিটি অ্যান্টি-প্যাটার্নটি কী তা বুঝতে হবে।
অ্যান্টি-প্যাটার্ন হিসাবে যোগ্য হতে, এটি করা দরকার
- সমস্যা টার সমাধান কর
- এর অবশ্যই নেতিবাচক পরিণতি রয়েছে
প্রথম পয়েন্টটি সহজেই পূরণ করা যায় - সিস্টেমটি কাজ করেছে, তাই না?
দ্বিতীয় পয়েন্টটি স্টিকিয়ার। সাধারণ নিয়ন্ত্রণ প্রবাহ হিসাবে ব্যতিক্রমগুলি ব্যবহার করার প্রাথমিক কারণ খারাপ কারণ এটি তাদের উদ্দেশ্য নয়। কোনও প্রোগ্রামের কার্যকারিতার যে কোনও অংশের তুলনামূলকভাবে সুস্পষ্ট উদ্দেশ্য হওয়া উচিত এবং সেই উদ্দেশ্যে সহ-ব্যবহার করা অপ্রয়োজনীয় বিভ্রান্তির দিকে নিয়ে যায়।
তবে তা নিশ্চিত ক্ষতি নয়। এটি জিনিসগুলি করার একটি দরিদ্র উপায়, এবং অদ্ভুত, তবে একটি বিরোধী নিদর্শন? না ... ঠিক অদ্ভুত।