Názory k článku
Perličky: objekty naruby

Yenya
Yenya (neregistrovaný)
17. 4. 2008 13:19 Nový

qq/\n/

celé vlákno
Diky za pekny clanek. Mam drobnou pripominku: proc pisete qq/\n/ misto "\n"?
To druhe je jednak kratsi, a jednak se (IMHO, YMMV, IANAL, ... :-) o mnoho lepe cte.

Ono vubec ty ruzne q! q/ a podobne jsou dost spatne citelne. Ja kdyz uz, tak (treba pro obaleni viceradkoveho SQL prikazu v DBI) pouzivam neco jako

$dbh->prepare(q{
    SELECT id, pocet_bodlin
    FROM jezci
    ORDER BY pocet_bodlin
});

- pri pouziti q{} misto q// je aspon opticky jasne, ze "tady neco zacina" (oteviraci zavorka) a "tady neco konci" (uzaviraci zavorka).

-Yenya
pht
pht (neregistrovaný)
17. 4. 2008 15:56 Nový

Re: qq/\n/

celé vlákno

Diky za pekne ohodnoceni.

Obecne se radi pouzivat kvuli lepsi citelnosti q a qq pro nektere jednoznakove konstanty, napriklad q/ / namisto ' ' a q/"/ misto '"'. (A pro nektere viceznakove pak operator x: q/ / x 5 a nikoliv '     ' - v tomhle proporcionalnim fontu ani neni poznat, kolik je tam mezer). Pak abych nemusel premyslet, co kam dat, jsem si vymyslel a zvykl i na qq/\n/. Sice je to delsi, ale nemusi se hrabat na shift a nejak uz mi to prsty pisou automaticky.

U toho viceradkoveho SQL bych zase ja pouzil here document (se spravnymi uvozovkami):

$dbh->prepare(<<'_END_SQL');
    SELECT id, pocet_bodlin
    FROM jezci
    ORDER BY pocet_bodlin
_END_SQL

Ale nakonec, timtoudy ...

pht
pht (neregistrovaný)
17. 4. 2008 16:04 Nový

Re: qq/\n/

celé vlákno
PS. jeste k tem zavorkam.

Souhlasim, ze pokud je to neco delsiho, vyplati se pouzit {} a to zejmena v regexovem operatoru. // je ale pro kratsi zapisy (pro mne) ok, jelikoz pokud to neni daleko, tak je hezky carami oddeleno /odsud sem/.

Pouziti jinych oddelovacu (vykricniky carky atd) v tichosti pretrpim, ackoliv si myslim, ze je to drobna sikana, a o vecech typu $x =~ mama bez ostychu tvrdim, ze to je zverstvo.
uživatel si přál zůstat v anonymitě
17. 4. 2008 20:31 Nový

Re: qq/\n/

celé vlákno
$x =~ mama je ok, zverstvo je $x =~ m ama :)
Yenya
Yenya (neregistrovaný)
21. 4. 2008 11:19 Nový

Re: qq/\n/

celé vlákno
S tim <<'_END_SQL' je problem, ze pro vice argumentu mate ta data v nelogickem poradi (teda v jinem nez je ctete normalne):

$dbh->selectrow_array('SELECT a FROM b WHERE c=?', {}, $c);

ma argumenty ve stejnem poradi jako nasledujici:

$dbh->selectrow_array(q{
        SELECT a
        FROM b
        WHERE c = ?
}, {}, $c);

zatimco tady ctete SQL prikaz az nakonec.

$dbh->selectrow_array(<<'EOF', {}, $c);
        SELECT a
        FROM b
        WHERE c = ?
EOF

Porad mi prijde q{} lepsi nez here-document. Ale samozrejme TIMTOWTDI.
-Yenya
Peter Ambrož

qq??

celé vlákno
okej, kod by bol celkom zrozumitelny. ale vysvetli mi niekto to qq/\n/ ?? a tiez qw. akosi som nepostrehol, co to robi
Michal Svoboda
18. 4. 2008 6:11 Nový

Re: qq??

celé vlákno
qq je misto uvozovek, qw je v zasade zkratka za split(/s+/, ...). Proc pouzivam qq viz vyse, jinak doporucuji si precist quote-like operators z man perlop.
Zasílat nově přidané příspěvky e-mailem
120na80.cz: V zákulisí farmafirmy: růžový, ale i bílý Ibalgin

V zákulisí farmafirmy: růžový, ale i bílý Ibalgin

Lupa.cz: Jak hackovat banky? Útočníci mají nový trik

Jak hackovat banky? Útočníci mají nový trik

Lupa.cz: Tip: tucet užitečných shieldů pro Arduino

Tip: tucet užitečných shieldů pro Arduino

Podnikatel.cz: Sick day ve hře. Ale s přísnými pravidly

Sick day ve hře. Ale s přísnými pravidly

Lupa.cz: Výmluvy. Ty ministerstvo průmyslu umí skvělě

Výmluvy. Ty ministerstvo průmyslu umí skvělě

Měšec.cz: Braňte se zdražování elektřiny. Pošlete úřadu svůj názor

Braňte se zdražování elektřiny. Pošlete úřadu svůj názor

Podnikatel.cz: Není jim to, tak to vrátí. Víme, jak na ně

Není jim to, tak to vrátí. Víme, jak na ně

Podnikatel.cz: Babiš chce snížit DPH u piva o 10 %

Babiš chce snížit DPH u piva o 10 %

Lupa.cz: Stream koupil Červeného trpaslíka a další seriály

Stream koupil Červeného trpaslíka a další seriály

Root.cz: EU chce zrušit anonymní platby

EU chce zrušit anonymní platby

Vitalia.cz: Nafotila svůj boj s rakovinou

Nafotila svůj boj s rakovinou

Vitalia.cz: Pozor na potraviny s atropinem

Pozor na potraviny s atropinem

Podnikatel.cz: Legální fotka za cenu kávy. Na to máte, ne?

Legální fotka za cenu kávy. Na to máte, ne?

Lupa.cz: Wi-Fi o vás ví mnohé. Co umí hotspot v hospodě?

Wi-Fi o vás ví mnohé. Co umí hotspot v hospodě?

Měšec.cz: Katalogoví šmejdi. Oberou vás o 30 tisíc a legálně.

Katalogoví šmejdi. Oberou vás o 30 tisíc a legálně.

120na80.cz: Domácí homeopatická lékárnička

Domácí homeopatická lékárnička

Podnikatel.cz: Babiš chce zrušit daňový bonus na dítě

Babiš chce zrušit daňový bonus na dítě

Podnikatel.cz: Kontrola ze sociálky se nedozvonila, má průšvih

Kontrola ze sociálky se nedozvonila, má průšvih

Lupa.cz: Jak na wifi zdarma? Praha 11 se spojila s komunitou

Jak na wifi zdarma? Praha 11 se spojila s komunitou

Root.cz: Tails: superbezpečný systém nejen pro Snowdena

Tails: superbezpečný systém nejen pro Snowdena

Ušetřete