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í.
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
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.