Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> DI vs Inheritance jeśli idzie o dostęp do danych
trzczy
post 4.05.2016, 13:02:52
Post #1





Grupa: Zarejestrowani
Postów: 460
Pomógł: 49
Dołączył: 5.06.2011

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


Kiedy fabryka produkuje sporo obiektów i każdy obiekt musi mieć dostęp do danych, które fabryka posiada, to lepiej Inheritance czy DI?

Załóżmy, że jest klasa fabryki o nazwie Test. I ta fabryka może produkować obiekty o klasie dziedziczącej(1.), albo o klasie pierwotnej z DI(2.):

1.
Kod
class PukProduct extends Factory{
    function __toString() {
        return $this->puk . "<br>\n";
    }
}


2.
Kod
class PinProduct {
    private $pin;

    function __construct($pin)     {
        $this->pin = $pin;
    }

    function __toString() {
        return $this->pin . "<br>\n";
    }
}


Ostatnio coś rozkminiałem i stanąłem przed tym dylematem. W przypadku dziedziczenia (1.) każdy wyprodukowany obiekt powstaje z klasy poszerzonej o klasę źródłową. Jeżeli ta klasa źródłowa jest, załóżmy, wielka to czy taki wyprodukowany obiekt jest tym samym większy od takiego, który powstaje na bazie klasy niedziedziczącej (2.)?

Jeśli jest przez to wielki i występuje wielokrotnie to chyba zajmuje pamięć? Jeśli tak, to nie lepiej stosować samo DI bez dziedziczenia(2.)?
Z góry dziękuję

edit: Poprawiłem tytuł, dostęp "do danych", a nie "di danych"

Ten post edytował trzczy 4.05.2016, 14:50:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
com
post 4.05.2016, 16:03:20
Post #2





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

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


ale nie można było napisać dziedziczenie co?

No skoro tworzysz klasę innego widoku, to raczej ona jest rozszerzeniem tej bazowej nie?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 18:18