Gelecekte iyi OOP tasarımı, temiz kod, esneklik ve kod kokularından kaçınmak açısından neyin daha iyi olduğunu merak ediyorum. Sınıf olarak temsil etmeniz gereken çok sayıda benzer nesneye sahip olduğunuz görüntü durumu. Bu sınıflar belirli bir işlevselliğe sahip değildir, sadece veri sınıflarıdır ve sadece adlarına (ve bağlamına) göre farklıdır
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;
}
Onları ayrı sınıflarda tutmak, "daha iyi" okunabilirlik elde etmek, ancak birçok kod tekrarına katılmak daha mı iyidir, yoksa daha fazla KURU olmak için miras kullanmak daha mı iyidir?
Kalıtım kullanarak, bunun gibi bir şeyle sonuçlanacak, ancak sınıf isimleri onu bağlamsal anlamını yitirecektir (is-a nedeniyle-a-a):
Class A
{
String name;
String description;
}
Class B : A
{
String count;
}
Class C : B
{
String imageUrl;
}
Class D : C
{
String age;
}
Kalıtımın kodun yeniden kullanımı için kullanılmadığını ve kullanılmaması gerektiğini biliyorum, ancak bu durumda kod tekrarını azaltmanın başka bir olası yolunu görmüyorum.