|
||||||||||||||||||||||||||||||||||||||||||||||||
Menu
Distributions (131)
Software (10844)
|
Perl (67) - Projekt - dokončujeme modulDnes dokončíme základní modul, abychom ho vzápětí mohli použít k vytvoření samotného programu
PerzistenceKdyž se podíváme na seznam úkolů, které by měl modul zvládat, zbývá poslední. Perzistentní uchovávání dat. Půjde jen o to, jak vhodně přepsat podprogram ziskej_zdrojovy_kod. Nadefinujeme si tedy proměnnou $cil, která bude jednoznačně identifikovat každý stažený soubor. $cil bude obsahovat cestu k souboru, kam zdrojový kód uložíme. Její tvar bude následující, podle toho, zda půjde o seznam zápasů nebo podrobnosti ke konkrétnímu zápasu.
Metoda ziskej_zdrojovy_kod bude vypadat takto.
Za jakých okolností nyní budeme data stahovat a za jakých pouze kopírovat ze zálohy? Soubor musí splňovat dvě podmínky. Musí existovat a musí být mladší než nějaký interval definovaný uživatelem. Ještě předtím, než dokončíme metodu ziskej_zdrojovy_kod musíme do objektu přidat v konstruktoru parametr refresh, který implicitně nastavíme na 30 sekund. Pokud bude soubor starší, než kolik je $refresh bude stažen znovu.
$f->{"refresh"} = (int $refresh < 30) ? 30 : $refresh;
Vraťme se k metodě ziskej_zdrojovy_kod. Nyní již známe podmínky, za kterých soubor pouze zkopírujeme. Proměnnou $/ jsme nastavili proto, abychom načetli celý kód ze souboru najednou.
Nejsou-li tyto podmínky splněny, nezbývá, než data získat znovu z internetu. Vytvořenému souboru poskytneme plná práva, aby mohli zálohu načítat a aktualizovat jiní uživatelé. To sice dává možnost falšovat data, ale vzhledem k tomu, že je stejně získáváme z webu, tak se na ně spolehnout nelze.
Modul hotovAž na dokumentaci jsme právě dokončili základní část modulu. Zrekapitulujme si stručně, co všechno nyní vlastně dokáže.
Ukázka použití moduluSice tušíme, jak se bude modul používat, ale měli bychom si to pro lepší pochopení alespoň stručně ukázat. V úvodu je třeba volat dvě metody - konstruktor a metodu na získání zápasů.
Dále zpravidla vybereme pouze zápasy vyhovující nějakým kritériím
Nyní můžeme udělat několik věcí. Buď data jen zobrazit za základě dat v poli @vyhovujici nebo získat podrobnosti k zápasu a zobrazit až je. Je též možné tyto podrobnosti periodicky doplňovat a tím získat program na online sledování.
my @udalosti = $live->prenos($vyhovujici_liga, $vyhovujici_idzapasu);
Tím vším se ale budeme podrobně zabývat až příště. Pokud si chcete vytvořit vlastní program využívající modul Livescore ještě dříve, než to uděláme společně v dalším pokračování seriálu, můžete si celý modul stáhnout.
|
Search Software
Search Google
|
||||||||||||||||||||||||||||||||||||||||||||||
©Pavel Kysilka - 2003-2024 | maillinuxsoft.cz | Design: www.megadesign.cz |