wiadomo z jednej strony po to jesz mechanizm dziedziczenia, zeby nie pisac tego samego kodu 1000 razy.
No między innymi po to. Jeśli masz kilka podobnych klas (mających jakąś część wspólną albo zbliżoną do siebie), to jasne - pisz klase bazową chociażby właśnie ze względu na oszczędność kodu. Ale jeśli to są zupełnie różne klasy i chcesz na siłe tworzyć jakąś klase bazową, bo... nie wiem po co (tak troche wynika z tego, co napisałeś), to nie.
ale zastanawiam sie nad szybkoscia dzialania programu
O wydajności ciężko cokolwiek powiedzieć na podstawie samych zależności między klasami.