Witam. Mam dylemat w kwestii programowania obiektowego.
Otoz jesli mam np. klase Figura, ktora jest jednoznacznie definiowana przez posiadane przez siebie pole (np. zbior wierzcholkow) , i wiem, ze w programie bedzie mi potrzebna klasa np Szescian i Kula, to czy powinienem wyprowadzic dla nich nowe klasy dziedziczace z Figury, np:
Kula : Figura
{
const Ksztalt ksztalt = ksztaltKuli;
}
czy raczej pozostac przy ogolnej klasie Figura, a np. kule tworzyc poprzez konstruktor:
Figura
{
const Ksztalt ksztalt;
konstruktorFigury(Ksztalt k)
{
ksztalt = k;
}
}
Bardziej przychylam sie do rozwiazania nr 2., bo jest bardziej ogolne i umozliwia tworzenie nowych figur w runtime, ale praktycznie w kazdej ksiazce jako przyklad OOP podaje sie wlasnie Figure i klasy Kwadrat : Figura, itp.