Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kiedy używać dziedziczenia ?
Damiankossek
post
Post #1





Grupa: Zarejestrowani
Postów: 118
Pomógł: 8
Dołączył: 10.12.2009

Ostrzeżenie: (0%)
-----


Witam, tak jak w temacie ... Wszedłem w świat OOP jakiś czas temu, teraz robię strony na Kohanie (IMG:style_emoticons/default/smile.gif) Bardzo przypadła mi do gustu ... Możecie powiedzieć mi kiedy używać dziedziczenia ? Wiem że jest to `jakby` rozdrabnianie klas ... Lecz nigdy nie mogłem znależć praktycznego zastosowania dziedziczenia w swoich skryptach (IMG:style_emoticons/default/smile.gif) Prosiłbym kogoś o takie szybkie i łopatologiczne rozpisanie jakiegoś skryptu np. newsów, artykułów czy czego kolwiek (byle nie zwierząt (IMG:style_emoticons/default/tongue.gif) ) ... Nie mówię że ma być kod tylko jak to ma wyglądać w praktyce, w formie jakiegoś drzewka lub czego kolwiek (IMG:style_emoticons/default/smile.gif)

No i jeszcze jedno .. Jak dziedziczyć w Kohanie ? Bo widzę że moje wszystkie modele i kontrolery już dziedziczą klasy wyznaczone przez Kohane (IMG:style_emoticons/default/smile.gif) _Models i _Controllers ... Da się jeszcze podpiąć coś czy nie bardzo (IMG:style_emoticons/default/smile.gif) ?

Przepraszam jeżeli są to jakieś durne pytania, ale niepotrafie zastosować tego w praktyce (IMG:style_emoticons/default/smile.gif)

Pozdrawiam

Ten post edytował Damiankossek 24.03.2010, 14:50:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




~Damiankossek
Praktyczne zastosowanie już znasz, teraz kolej na teoretyczny bełkot (IMG:style_emoticons/default/winksmiley.jpg)
Dziedziczenie, w zależności od strony z której spojrzeć, nazywa się specjalizacją lub generalizacją. O specjalizacji mówimy gdy patrzymy na klasy "od góry", czyli od pierwszej/głównej klasy. Każda klasa, która dziedziczy po pierwszej jest specjalną odmianą rodzica. Klasa taka posiada wszystkie elementy rodzica oraz własne, specjalne, elementy. Stąd nazwa - specjalizacja. Oczywiście łańcuch dziedziczenia nie kończy się na jednej klasie. Wyspecjalizowanych klas może być więcej, np Klasa1 -> Klasa11 -> Klasa111...
Generalizacja jest odwrotnością specjalizacji i polega na patrzeniu na hierarchię klas "od dołu". Czyli zaczynamy od klasy, po której nic już nie dziedziczy i przesuwamy się "do góry". W takim przypadku rodzic jest uogólnionym przypadkiem danej klasy. Innymi słowy jest to to samo, tylko ma mniejsze możliwości.

Jeśli chcesz poznać więcej teorii, to poczytaj na temat diagramów klas w UML.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 05:13