Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Zamezení duplicity kódu

Aktivity
Avatar
Dominik Klapuch:19.10.2014 0:54

Ahoj,

dělám jídelní lístek a potřebuji zde zamezit duplicitě kódu. Mám třídu JídelníListekPage a DenniNabidkyPage. Obě třídy mají metody jako update, delete, insert, které mají stejný počet parametrů.

Šlo by jednoduše použít dědičnost, ale trápí mě situace, kdy budu chtít třeba do metody update u třídy DenniNabidkyPage přidat další parametr - to samé bych poté musel přidat pro metodu insert. Tím by se mi dědičnost zkomplikovala než zjednodušila.

Metoda update vypadá takto:

public function update($ids = [], $names = [], $prices = []) {
        $this->csrf->isTimeout();
        $names = $this->validator->validateNames($names);
        $prices = $this->validator->validatePrices($prices);
        return $this->storage->update($ids, $names, $prices);
}

Mám tedy tyto dvě třídy nechat samostatně oddělené či hledat jiný způsob?

Děkuji za rady.

Editováno 19.10.2014 0:55
Odpovědět
19.10.2014 0:54
Kód a data patří k sobě.
Avatar
hanpari
Člen
Avatar
Odpovídá na Dominik Klapuch
hanpari:19.10.2014 7:46

Překrývání metod?

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
19.10.2014 7:46
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.