Názory ke článku Generujeme náhledy s PHP objektově
17. 1. 2010
Nepoužívejte private, kde stačí protected. Nenechte uživatele čekat na zpracování thumbu, ale předgenerujte mu data. Určitě ho nenechte parametricky určovat velikost thumbu. Je lepší používat generické výjimky, místo Thumb* výjimek.
18. 1. 2010
Bohužel ten výstup není validní. Width resp. height je nutné řešit v thumb.
18. 1. 2010
Autorovi se asi s odpovídáním do diskuze nenamáhá, proč taky, už se zde rozpitvávají detaily, článek je dobrý.
RR píše:
Nepoužívejte private, kde stačí protected. Nenechte uživatele čekat na zpracování thumbu, ale předgenerujte mu data. Určitě ho nenechte parametricky určovat velikost thumbu. Je lepší používat generické výjimky, místo Thumb* výjimek.
Ano, předgenerování dat by bylo dobré, ale i tak je článek dost obsáhlý. Jde o výuku programování, než o geniální hotové skripty. To samé s velikostí náhledu - skript pro načítání je nejspíše záměrně silně zjednodušen. Generické výjimky má PHP na tak mizerné úrovni, že není na škodu používat vlastní.
Vašek píše:
Bohužel ten výstup není validní. Width resp. height je nutné řešit v thumb.
Co se ti nezdá, Venco, validní?
10. 3. 2010
Reagoval na komentář od uživatele Møstro :
Generické výjimky má PHP na tak mizerné úrovni, že není na škodu používat vlastní.
Generické výjimky nemusí být obsažené v php. Znamená to druhové výjimky. Všimněte si, že pro tuto konkrétní třídu na thumbnaily vytvořil tři jednoúčelové výjimky, které navíc říkají jen to, že data pro thumb nejsou soubor, obrázek nebo mají neznámý formát. Proč nepoužít místo ThumbExceptionNotFile třeba IOException nebo něco podobného, co můžeme využít znova úplně jinde?
V čem s vámi zásadně nesouhlasím je, že rozpitvávám detaily. Na zjištění pár vhodných dunkcí stačí manuál. Programování není ale o lepení funkcí k sobě, nýbrž o hledání funkčních elegantních řešení. Zbytečný private je chyba, předgenerování thumbů je v praxi důležité (zkuste si generovat 150 thumbů na stranu). Kdybych pitval detaily, tak píšu třeba o $this->thumb = DIR_THUMBS.md5($img.$width.$height);
13. 3. 2010
Reagoval na komentář od uživatele RR :
Zapomínáte na jednu věc - proč tu ten článek vlastně je. Není tu jako chlouba autora, že umí psát dokonalé skripty (protože neumí, předpokládám :) ), ale jako sdělení pro ty, co se chtějí něčemu přiučit. A zároveň nežijí jen z tohoto článku, jinde si přečtou něco jiného, dají si dvě a dvě dohromady a vyberou si, co je lepší.
16. 3. 2010
Reagoval na komentář od uživatele Møstro :
A snad si ti, co se chtějí něčemu přiučit, přečtou i komentáře. Od toho tu jsou zase ty, aby doplnily nebo opravily autora. Napsat funkční kód je jen jedna strana mince, je potřeba přemýšlet i o jeho srozumitelnosti, struktuře, znovupoužitelnosti, integraci, datech a jejich formátech atd.
16. 6. 2011
Dobrý den, breaky ve switch jsou zbytečné, pakliže tam voláte return. Na pár místech by se dal použít i stažený tvar. elseif se píše v PHP dohromady, urychluje to vyhodnocení podmínek. Nechci působit jako hnidopich, ale myslím že stojí za to se zamyslet nad čistotou kodu a podívat se na to očima parseru.
Poslední vítka jde k logice objektu. Incializovat objekt s tím že obsahuje sice nulové hodnoty, ale přesto je obsahuje, není zcela šťastný přístup. Zvolil bych spíše jako počáteční hodnoty NULL. Jednak nezabírají narozdíl od nul a prázdných řetězců v paměti "tolik" místa a druhak mi to přijde smysluplnější.
#8 Vladimír Bělohradský
Dobrý den,
- s breaky ve switch máte samozřejmě pravdu
- stejně tak s elseif, patrně pouze překlep, omlouvám se, ale bohužel se občas stává.
- s nulovými hodnotami tak docela nesouhlasím - samozřejmě by to bylo možné inicializovat s NULL, ale protože PHP není typové, je o něco těžší pak udržet úroveň kódu. Z prázdných uvozovek okamžitě poznám, že se jedná o string, z nuly že jde o číslo. S pamětí máte pravdu, ale myslím, že není potřeba tolik honit bajty ;)
7. 10. 2012
Velmi pěkný článek, který mi pomohl s generováním náhledů. Děkuji autorovi!