reklama

PHP - Hledám vhodný název třídy

perceptron

Re:PHP - Hledám vhodný název třídy
« Odpověď #15 kdy: 06. 05. 2014, 20:16:01 »
este mi napada otazka: naco je mat vobec v takomto php pripade triedu, ked je to len obal na nahodne zhromazdene funkcie? ;-)

reklama


none_

Re:PHP - Hledám vhodný název třídy
« Odpověď #16 kdy: 06. 05. 2014, 20:43:51 »
Fasáda není obal na nahodne shromáždené fce. Má místo toho ulehčit práci s objekty. Dejme tomu, že pro ověření, zda uživatel může na stránku potřebuju vytáhnout uživatele podle session, převzít název stránky z url a obe informace ověřit proti DB. Tzn mám dejme tomu 3 třídy, které umožňují provést jednotlivé požadované kroky (uživatel, urlparametry, ověření) a budu podobnou činnost dělat na více stránkách opakovaně. Proto abstrahuji posloupnost kroků do metody fasády a pouze parametrizuji vstup a kontroluji výstup. Tzn skrývá mi to složitou logiku.

Bla

Re:PHP - Hledám vhodný název třídy
« Odpověď #17 kdy: 06. 05. 2014, 20:59:39 »
Ano, má to význam.

Řekněme tomu třeba buffer.
Než abys tady nechal nějaké svinstvo různě povalovat stylem támhle kousek bordelu, tady špínu, támhle papírek, šoupneš to do jedné krabičky a máš uklizeno. Pokud se ti v té krabičce nastřádá deset podobných kravinek, zjistíš to snáz, než abys (což nikdo PAK STEJNĚ nedělá) prohledával kód a koukal se, jestli se někde nedá něco spojit.

Já třeba nemám rád samostatné třídy obsahující tři řádky kódu, který něco provádí! Když už, tak je obalit!

Další výhoda "Maslostroje" je v tom, že když se rozhodneš nějaký bordel sloučit, hledáš odkazy jen na "Maslostroj".

Pokud nejsi sprasovatel (čti programátor v PHP) definuješ, že bordel může být jen v _MasloStroj a nikde jinde, takže buď to píšeš čistě, nebo přidáváš do _MasloStroje. S trochou píle se dá _MasloStroj uklidit, takže výsledkem bude sice chrchel na první pohled nesouvisejících metod, ale protože _MasloStroj je jen obálka (fasáda) pak i v tom svém bufferu máš pořádek.

Jsou programátoři, kteří programují řekněme živelně a ti, kteří si vše dobře naplánují.
Pokud patříte k těm živelným, v první fázi vše naboucháte do _MasloStroje, ale už předem počítáte s tím, že se to bude muset přepsat.
Ten kdo nemyslí deset tahů dopředu si s tím může i vystačit. Jak třídy do _MasloStroje (ten název se mi moc líbí!) přibývají, poškrábete se na kebuli a začnete v tom dělat pořádek, takže se obsah bufferu vyprazdňuje a zůstane tam jen skutečný herberk.
Někomu to vyhovuje, když napíšete většinu funkcí, kouknete se na to a celé to zjednodušíte.
No někdo si zase raději napíše specifikaci a ti nejšťastnější z nás to píšou z voleje dočista.

Bla

Re:PHP - Hledám vhodný název třídy
« Odpověď #18 kdy: 06. 05. 2014, 21:04:34 »
Fasáda není obal na nahodne shromáždené fce. Má místo toho ulehčit práci s objekty. Dejme tomu, že pro ověření, zda uživatel může na stránku potřebuju vytáhnout uživatele podle session, převzít název stránky z url a obe informace ověřit proti DB. Tzn mám dejme tomu 3 třídy, které umožňují provést jednotlivé požadované kroky (uživatel, urlparametry, ověření) a budu podobnou činnost dělat na více stránkách opakovaně. Proto abstrahuji posloupnost kroků do metody fasády a pouze parametrizuji vstup a kontroluji výstup. Tzn skrývá mi to složitou logiku.

Tak to zřejmě bylo původně myšleno, to nepopírám :P
V každém případě to funguje i na udržení pořádku, což v tomhle případě řešíme ne?
Protože pokud použiješ Fasádu jako obal na bordel, máš bordel v nejhorším na jednom místě, což je lepší, než ho mít všude v kódu.

Bla

Re:PHP - Hledám vhodný název třídy
« Odpověď #19 kdy: 06. 05. 2014, 21:14:43 »
Dřív jsem malé a nicnedělající třídy flákal jako Baťa cvičky, až jsem zjistil, že to je kontraproduktivní, protože s jejich narůstajícím počtem vzniká problém se v nich vyznat a co hůř, udělat je znovupoužitelné, tedy když programuju "divoce". Použití malých samostatných tří vedlo jen k tomu, že jsem nevytvářel znovupoužitelný kód, protože poprvé jsem tu třídu "tak teda udělal", podruhé to "nějak ohnul", potřetí přepsal a počtrvé k tomu ve fofru přidělal nějaký cancour, který dělal kdo ví co. Od té doby si třídy, které nejsou na první pohled nikam snadno zařaditelné, cpu do tohoto bufferu a když se tam toho objeví víc, a já už vím, co to všechno bude muset dělat, navrhnu dobrou třídu, navrhnu jí správně a z bufferu to vyndám. Díky tomu se mi v kódu neválí chrchle zapomenutého kódu.

App, můžete se mě pokusit přesvědčit, že je lepší mít deset "skoronicnedělajících" tříd než jeden bordel buffer.
Rád bych slyšel nějaké opravdu pádné argumenty.

A zase, netvrdím, že to bude vyhovovat 9ti z 10ti programátorů, tvrdím, že to vyhovuje mě, schovávat svinstvo za fasádu, pak si tam uklidit a kód je v pohodě.

reklama


Tany

Re:PHP - Hledám vhodný název třídy
« Odpověď #20 kdy: 06. 05. 2014, 22:23:51 »
Facade je opravdu dobrý vzor, pokud je potřeba něco rychle naprasit. Wrapper se mi pak stará o konzistenci a hacky (rekurze). Většinu lidí zajímají akorát dvě věci: 1) Za kolik, 2) Za jak dlouho. U jednorázovek to stejně skončí u toho _MasloStroje, pokud se na tom dělá dále, tak se uklízí.

 

reklama