আমি ভাবছি ভাল ওওপি ডেসিং, ক্লিন কোড, নমনীয়তা এবং কোড এড়ানো ভবিষ্যতে গন্ধের ক্ষেত্রে আরও ভাল কি। চিত্রের পরিস্থিতি, যেখানে আপনার ক্লাস হিসাবে প্রতিনিধিত্ব করতে হবে এমন অনেকগুলি একই ধরণের অবজেক্ট রয়েছে। এই ক্লাসগুলি কোনও নির্দিষ্ট কার্যকারিতা ছাড়াই রয়েছে, কেবল ডেটা ক্লাস হয় এবং কেবল নাম (এবং প্রসঙ্গে) দ্বারা পৃথক হয় উদাহরণ:
Class A
{
String name;
string description;
}
Class B
{
String name;
String count;
String description;
}
Class C
{
String name;
String count;
String description;
String imageUrl;
}
Class D
{
String name;
String count;
}
Class E
{
String name;
String count;
String imageUrl;
String age;
}
"আরও ভাল" পাঠযোগ্যতা পাওয়ার জন্য তাদের আলাদা ক্লাসে রাখা কি আরও ভাল, তবে অনেক কোডের পুনরাবৃত্তিগুলি বুদ্ধিমান হয়, বা আরও ডিআরওয়ির জন্য উত্তরাধিকার ব্যবহার করা আরও ভাল কি?
উত্তরাধিকার ব্যবহার করে, আপনি এরকম কিছু দিয়ে শেষ করবেন তবে শ্রেণির নামগুলি এর প্রাসঙ্গিক অর্থটি হারাবে (কারণ- এ-এর কারণে নেই):
Class A
{
String name;
String description;
}
Class B : A
{
String count;
}
Class C : B
{
String imageUrl;
}
Class D : C
{
String age;
}
আমি জানি যে উত্তরাধিকার কোড পুনরায় ব্যবহারের জন্য নয় এবং ব্যবহার করা উচিত নয়, তবে এই জাতীয় ক্ষেত্রে কোড পুনরাবৃত্তি হ্রাস করার উপায় আমি অন্য কোনও সম্ভাব্য উপায় দেখছি না।