Pouze tento týden sleva až 80 % na e-learning týkající se PHP. A zároveň využij akce až 30 % zdarma při nákupu e-learningu. Více informací.
Hledáme asistenty pro kurzy programování - pohodová brigáda. Více info
PHP week
Avatar
Martin Konečný (pavelco1998):21.2.2013 12:00

Ahoj,

zajímal by mě váš názor na jednu věc.
Dejme tomu, že máme například nějakou hru, kde si můžeme postavit jakýsi "supply depot", který nám umožní nakoupit další jednotky. Každý supply depot by přidal možnost kupovat o 10 jednotek navíc.
Aby se ušetřilo posílání dotazů, napsalo by se něco ve smyslu

$obj->buildSupplyDepot();

V té metodě by byl asi takový SQL příkaz

$this->db->exec("
  UPDATE `tabulka`
  SET `supply_depot` = `supply_depot` + 1, `supply` = `supply` + 10
  WHERE user_id = ...
");

Nebylo by logičtější napsat to takto?

$obj->buildSupplyDepot();
$obj->addSupply(10);

Kde metoda "buildSupplyDepot" by nedělala nic jiného, než postavila budovu, a metoda "addSupply" by přidala zmíněných 10 bodů.

Druhý způsob provede 2 databázové příkazy, čili to bude o něco náročnější, ale na druhou stranu mi to přijde jako vhodnější řešení, co se týká reality.

Pozn.: Bylo to první, co mě napadlo, tudíž teď nechci řešit, proč jsou sloupce supply_depot a supply, tak to, prosím, berte tak, jako by to bylo správně. :-)

Odpovědět
21.2.2013 12:00
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
denoy
Člen
Avatar
denoy:23.2.2013 2:58

xyz

 
Nahoru Odpovědět
23.2.2013 2:58
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Drahomír Hanák
Redaktor
Avatar
Odpovídá na Martin Konečný (pavelco1998)
Drahomír Hanák:23.2.2013 3:09

Bylo by lepší, ukládat si jen počet těch "supply depot" a ve skriptu vypočítat, kolik teda jednotek si může postavit. Můžeš totiž změnit to nastavení. Pak bys to musel u všech upravovat.

 
Nahoru Odpovědět
23.2.2013 3:09
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 3 zpráv z 3.