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