abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
dnes 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
včera 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
včera 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 4
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 10
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
20.1. 00:11 | Zajímavý článek

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (10%)
Celkem 360 hlasů
 Komentářů: 25, poslední včera 13:34
Rozcestník
Reklama

Dotaz: Proč se používá v url pomlčka a ne něco jiného?

9.9.2012 17:28 Amatherus
Proč se používá v url pomlčka a ne něco jiného?
Přečteno: 656×
Ahoj, chtěl bych se zeptat, jestli má na něco vliv v url znak pomlčka? Proč všichni používají v delším názvu pomlčky? Já osobně bych preferoval spiše třeba podtržítka než pomlčky. Někde jsem četl, že taková adresa auto-moto-letadlo obsahuje pro vyhledávač 3 různá klíčová slova, kdežto adresa auto_moto_letadlo pouze jedno (ale nevím jaké to v tomto případě je). Jelikož používám class v programování a není možné používat názvy s pomlčkou, musím taové názvy nahrazovat podtržítkem + další problémy s pomlčkou. Díky za objasnění.

Odpovědi

9.9.2012 17:49 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Je to dáno tím, že vyhledávače ignorovaly podtržítka. To znamená, že z řetězce "auto_moto_letadlo" vzniklo jedno slovo "automotoletadlo" a zaindexovalo se to špatně. Pomlčky tím netrpí.

U názvů tříd je dobrý fígl v autoloadu překládat podtržítka na lomítka. Dobře se to pak strukturuje do podadresářů. Nebo snad natahuješ třídy přímo podle URL?
9.9.2012 18:01 l4m4
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Jelikož letadla nejsou motorky a motorky nejsou auta, nedává hierarchické URL typu /auto/moto/letadla moc smysl.
9.9.2012 18:16 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Správně. Proto by mezi těmi slovy neměla být podtržítka, ale spojovníky. Podtržítka ponechávám tam, kde potřebuji zmíněnou hierarchii.

Zrovna string "auto-moto-letadla" se hodí spíš jako klíč do databáze, než jako název třídy. Proto jsem moc nechápal dotaz.
9.9.2012 18:14 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
...Dobře se to pak strukturuje do podadresářů.
Jak to myslíš?
...Nebo snad natahuješ třídy přímo podle URL?
Ano, ty ne? Jak pak poznáš jakou třídu potřebuješ? ;)
9.9.2012 18:20 l4m4
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Týká se obsah stránky té třídy? Pokud ne, tak co dělá v URL nějaká třída?
9.9.2012 18:24 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Týká se obsah stránky té třídy? Pokud ne, tak co dělá v URL nějaká třída?
Ano, pokud mám v url http://www.domain.ltd/my-account/ tak volám class my-account. Jenže jak to psal KIT tak to tak možné udělat není možné, pokud již zavolám class my-account, těžko si změním název volené třídy, myslím si, že volat musím již požadovaný název té class, ale říkám jen můj názor, nejsem profík..
9.9.2012 18:27 l4m4
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Takže ne, obsah stránky se netýká té třídy. Obsah stránky by se týkal třídy, když by třeba stránka popisovala, jak ta třída funguje. Třída se akorát používá v implementaci stránky, což je implementační detail, který do URL nepatří a později ti bude komplikovat život.
9.9.2012 18:33 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Aha, a podle čeho mám jako poznat co uživatel očekává, když ne podle url? ;)
9.9.2012 18:35 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
To píšeš, jako kdybys pro každou podstránku dělal extra class.
9.9.2012 19:13 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
To píšeš, jako kdybys pro každou podstránku dělal extra class.
Ale ano, pro každou stránku mám extra class... Přece nebudu mít jednu class na 5000 row :-)
9.9.2012 19:16 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Tím chceš naznačit, že součástí tvých class jsou i texty článků?
9.9.2012 19:19 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Tím chceš naznačit, že součástí tvých class jsou i texty článků?
To samozřejmě ne, pokud daná stránka má vypisovat články, obstará to class která vypisuje pouze články ato všechny nebo za pomocí nějakého filtru, ale už neumím třeba přihlásit usero do systému nebo ho zaregistrovat..
9.9.2012 19:01 l4m4
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Jsme-li v módu diskuse ‚plácnu rádobyvtipnou pitomost a napíšu smajlík‘, jak naznačují tvoje příspěvky, přizpůsobím se, není problém...

Když URL nesouvisí s obsahem stránky, tak to nijak poznat nejde ;)
9.9.2012 19:16 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Když URL nesouvisí s obsahem stránky, tak to nijak poznat nejde ;)
Uniká mi pointa, co tím myslíš?
pavlix avatar 10.9.2012 13:02 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
LOL
Gentoo – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
9.9.2012 18:31 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
...Dobře se to pak strukturuje do podadresářů.
Jak to myslíš?
Asi takto:
include(str_replace('_', '/', $class));
...Nebo snad natahuješ třídy přímo podle URL?
Ano, ty ne? Jak pak poznáš jakou třídu potřebuješ? ;)
Simple Factory. Podle názvu klíče určím class, hodnotu dám jako klíč do DB.
9.9.2012 18:41 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Tak že jednotlivé proměnné v url ti spouží pouze jako nějaký identifikátor?
- Čili user odešle požadovanou URL
- Ty vezmeš potřebná data z URL
- pošleš je do mysql
- mysql ti vrátí název class
- zavoláš požadovanou class
hm, bez urážky, to si jako děláš ze mne prdel? :-)
tak já to dělám takto
- user odešle požadovanou URL
- zavolám požadovanou class
Nepotřebuji k tomu žádnou mysql ani v tom nevidím sebemenší problém...
9.9.2012 18:51 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Ne. Dostanu URL ve tvaru:
domena.cz/?stranka=auto-moto-letadla
Slovo "stranka" je pro mne klíčem pro zavolání class View. Jako parametr konstruktoru je string "auto-moto-letadla". Konstruktor si vytáhne text článku podle klíče "auto-moto-letadla" z DB. Prezenter to převede do HTML a zobrazí.

Pokud budu jen prohlížet, stačí mi jedna class View. Články ukládám do DB, kam ostatně patří.

Také k tomu žádnou MySQL nepotřebuji.
9.9.2012 19:03 l4m4
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
A nechci-li vypadat jako amatér, tak
domena.cz/?stranka=auto-moto-letadla
presentuji ven jako
domena.cz/auto-moto-letadla
Např. pomocí mod-rewrite, když už ne jinak.
9.9.2012 19:05 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Přesně tak. Nechtěl jsem ten příklad zbytečně komplikovat hezkými URL.
pavlix avatar 10.9.2012 13:05 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Mně přijde škoda ho komplikovat ošklivými URL.
Gentoo – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
pavlix avatar 10.9.2012 13:03 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
A nechci-li vypadat jako amatér, tak
To lze přeložit i:
A nechci-li, aby bylo na první pohled poznat, že jsem amatér…
Gentoo – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
9.9.2012 17:59 l4m4
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Běžná konvence (byť ne universální) u tvorby identifikátorů v programovacích jazycích je, že podtžítko je slovotvorný znak. Tedy a_b_c_d_e je jeden identifikátor (slovo), a-b-c-d-e není.

Vyhledáváče dnes vesměs dovedou foo a bar uvidět ve foo-bar i foo_bar (obzvlášť když se to jinak nevyskytuje), ale na druhé straně taky chápou, že kdy zadám foo_bar, chci to hledat jako jeden identifikátor, ne dvě slova.

Podtržítko je ale ‚divný znak‘, který normální lidi nepoužívají a netuší, kde ho mají na klávesnici.

Takže pokud se stránka týká třídy auto_moto, tak ať má v názvu auto_moto. Pokud se ale týká aut a motorek, do názvu patří auto-moto, protože pomlčkou[*] spojují slova lidi.

[*] Jo, já vím, že ASCII 0x2D není pomlčka, ale už to mě z normálních lidí vyděluje...
9.9.2012 19:23 Amatherus
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Pořád ale nevím, jak po zavolání class s názvem my-account spustit class s názvem my_account.
19.9.2012 09:15 George O.
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Si napis nejakej router na to, ne? Rozparsujes s nim url a pak zavolas tridu + metodu, ktera je prirazena k dane nebo obecne route a jeste si muzes udelat hezkou url... a to vse jen diky par regularnim vyrazum.

napr.: domain/product/detail/25 ti muze router najit jako: controler: product; method: detailAction, id: 25;

anebo domain/product/list jako: controler: product: method: listAction;

pak neni problem nainstancovat spravnej controler a metodu a mit v tom nejakej system. Neni treba mit na obsluhovani produktu pro detail a vypis mit dve classy, staci ti jedna classa a dve metody, protoze logicky spravujes porad product...

snadno s nim vyhodis i 404 :-)
19.9.2012 09:44 Kit
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Však už jsi dostal odpověď:
$class=str_replace('-', '_', $atrib);
$objekt=new $class();
Jenom je problém v tom, že je to rada, jak se máš střílet do nohy.
10.9.2012 09:58 Sten
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Josef Kufner avatar 17.9.2012 23:23 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Proč se používá v url pomlčka a ne něco jiného?
Ftip je v tom, že odkazy jsou obvykle podtržené a podtržené podtržítko je blbě_vidět.

Doporučuju používat podtržítka všude vyjma URL, pak stačí prosté obousměrné mapování podtržítko–pomlčka, pokud potřebuješ z toho dělat identifikátory.

Používání lomítek je dobrá věc, otázkou pak jen je, zda u tříd radši nevyužít jmenné prostory (zpětné lomítko v PHP).
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.