Dedicnost je jedna z velmi dulezitych vlastnosti objektoveho programovani.Typicky priklad:Mas objekt Obecny_Graficky_Objekt, ktery mit metodu NakresliSe, NastavBarvu, SmazSe...Od tohoto objektu budou zdedene dalsi objekty jako Bod, Ctverec, Trojuhelnik, Kruh...Kazdy jen prepise metodu NakresliSe. A tobe pak bude jedno, ktery objekt pouzijes, protoze staci, kdyz pouzijes odkaz na predka a zavolas NakresliSe. Ty si budes drzet seznam predka (Obecneho_Grafickeho_Objektu) a nebude te zajimat, jestli jde o kruh, ctverec... Ke vsem pristupujes stejne. Potrebujes pridat vsem objektum novou vlastnost? Treba PohniSe? Tak ji pridas do spolecneho predka, ktery jen zavola SmazSe a VykresliSe na nove pozici. Od te chvile muzes pouzivat tuhle novou metodu u vsech objektu.Druha dulezita vlastnost je zapouzdreni objektu - kazdy objekt je samostatny a zapouzdruje urcity funkcni celek. K tomuto celku pristupujes jen pres objekt, nikdy ne primo.Je to mnohem snadnejsi na udrzovani velkeho projektu, kdy napr. kazdy ciselnik je odvozeny od nejakeho zakladniho objektu a je plne zapouzdreny. Ostatni casti vubec nezajima, kde jsou ulozena data ciselniku, pouze si objekt cislniku vytvori, vyvola seznam polozek apod. A programator vi, ze kdyz potrebuje menit neco kolem adresare, pouze zmeni jeden objekt a nebude muset dohledavat v rozsahlem projektu, kde vsude se vybiraji data z adresare.
Co můžeš udělat dnes, odlož na včerejšek.