Dedeni vs interface je evergreen a porad to hromada lidi nechape.
Pritom zakladni hruby mechanismus je prosty.
Kdyz potrebuju rozsirit funkcionalitu pri zachovani stavajici - dedeni.
Kdyz potrebuju pracovat stejnym zpusobem s ruznymi objekty s ruznou vnitrni implementaci - interface.
Udelat bazovou tridu a v ni pulku metod overloadovat je kokotina.
A nejvetsi zadek je, ze se to normalne ve skolach uci, viz:
https://stackoverflow.com/questions/50793617/object-oriented-design-shapesJe uplna hovadina dedit shapes (rectangle, triangle, circle), kdyz se pak dilci metody (obsah, bod je uvnitr apod) stejne pro kazdy typ pocita jinak.
To je typicky priklad na interface.
Typicky priklad na dedeni je treba plugin, tam mam par overloadovaych metod typu init(), execute(), destroy(), zbyle metody potrebne pro komunikaci s okolnim frameworkem zustavaji jak jsou a casto jsou este oznackovany "final", aby vubec overloadovat nesly.