Autor Zpráva
xlifer
Profil
Nevím zda je to trend, že když se někde nasadí nový zápis, tak všichni chtěji být moderní a začnou to využívat nebo má jiný důvod používat složené závorky namísto End.

Přiklady:

if ; endif
for ; endfor;
while; endwhile

atd.

<?
if ($a == 1):
echo "neco";
endif;

// nebo

if ($a == 1) {
echo "neco";
}
?>


Ze zápisu je zřejmé, že je samozřejmě bez End kratší zápis (přehlednějši bych neřekl), ale jinak je výhoda jaká?
Neas
Profil
pokud já vím, žádný rodíl mezi tím není ať si každý používá zápis, který mu více vyhovuje. Osoně se přikláním k druhému stylu, tedy:
if ($a == 1)
{
  echo "neco";
}

přijde mi to přehlednější, než endif
panther
Profil
xlifer:
v současné době je nezanedbatelnou výhodou to, že souvisejí závorku dokáže editor najít a označit (případně na ní přejít). Nejde o zápis na 3 řádky, ale když pak ten blok má několik desítek či stovek řádků kódu, rozdíl poznat je.

Mimo závorky, je potřeba správně odsazovat i kód, tzn. vše, co je vnořené, odsadit.
Hooonza
Profil
http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=75843
Lamicz
Profil
xlifer:
Ješte je vhodné psát
<?php
?>
xlifer
Profil
Z výše uvedených názoru a odkazů tedy vyplývá, že se více doporučuje zápis složených závorek, ale pokud někomu vyhovuje End x zápis (jako třeba i mně) a význá se v tom, tak není co řešit. Na samotný výsledek kódu skriptu to vliv nemá což je potěšující závěrečná zpráva takového průzkumu :-)

Díky za názory a poučení. Vážím si každého názoru, protože každý názor je vždy přinosem pohledu na věc.
xlifer
Profil
Lamicz:

Pokud bych kombinoval např. XML <? tak určitě, jinak myslím, že až tak závažné to není.

A když už jsme u toho, tak nevíte kde v configu Apache lze direktivitu nastavit,
aby brala <?php místo <?
joe
Profil
Jsem pro složené závorky:

1. Přijde mi to přehlednější.
2. Je to rychlejší na psaní.
3. Je možné hledat / zvýraňovat protější závorky.
4. Na složené závorky funguje code folding, ale jak je to u ifů apod. nevím, možná i pro ně to jde nastavit.
Radek9
Profil
xlifer:
Pokud ti jde o to, aby fungovalo jen <?php, tak stačí vypnout short_open_tags.
xlifer
Profil
Radek9:

Ano, přesně tak. Díky za tip.
Miloš
Profil
Taky jsem pro složené závorky. Jak už tady zaznělo, editory najdou druhou do páru. Pokud subjektivně, naučil jsem se je používat, když jsem si myslel, že se naučím Céčko; od té doby mi složené závorky zůstaly a na slovní zápisy bych přecházel velmi nerad. Jsem sice ochotný změnit návyk, ale jen tehdy, když mi to něco přinese (jako jsem například přestal ukončovat <li> nebo <p> a přestal psát <body> a podobně – považuji takový zápis za přehlednější). Je to sice subjektivní, ale jistě v tom nejsem sám.
Medvídek
Profil
Dneska sem předělával po kolegovi skipt, který používá endif, endfor, endwhile atd. Děs se v tom vyznat, kde je začátek a kde konec :(
panther
Profil
Medvídek:
Děs se v tom vyznat, kde je začátek a kde konec :(
teoreticky, při správném odsazování bys to měl poznat snadno - ve sloupci, kde začíná podmínka, by měla i končit, vše ostatní by mělo být zanořené.

Vlastně vyznávání se je stejné jako s uvozovkami, nemáš-li po ruce editor hledající párové závorky.
Medvídek
Profil
panther:
no pokud máš kód na 500 řádků (a máme tam i skripty o 3500 řádcích) tak bych chtěl vidět, jak někdo hledá podle odsazení.
Obzvlášť při řetězení by ses na řádku 300 dostal někam na sloupec 100 a to by asi nebylo nejpřehlednější :)

Už jen při této struktuře, kde mohou být ify, které jsou na jedn řádek e nemají tedy ukončovací značku, si nedokážu představit, něco hledat, až se to obalí dalšími funkcemi
if
 for
  if
  if
   if
    for
     if
     if
      if
       for
       endfor
    endfor
   endif
 endfor
endif
xlifer
Profil
Medvídek:

Ja myslím, že všechno jde když se chce a v tom případě, který jsi uvedl složené závorky nepomůžou se orientovat lépe. A souhlasím s pantherem, že je to úlně stejný systém akorát je odsazeno endif nebo endfor místo závorky.

A proč to vlastně předěláváš??? :-) Výsledek bude stejně totožný... možná pro pocit, že to vypadá lépe nebo, že editor umí potom skákat na konec uzavřené závorky... Kdybych takový skript opravoval 10x denně, tak bych možná uvažoval o efektu na složené závorce, ale jinak myslím, že je to jedno a navíc některé editory umí skákat uplně stejně na endif jako na složené závorky.
Medvídek
Profil
xlifer:
Výsledek bude stejně totožný
Nebude, když kliknu na řádek 250 na { tak pomocí editoru může zjistit, že mi končí na řádku 580 }. (Pokud bych zjistil, jak toho docílit i u syntaxe s endfor, tak bych to asi nepředělával.

A proč to vlastně předěláváš
Protože všechny kódy co psal, byly jakési alfa verze a teď je předělávám na ostro. Taktéž se tam používá <a href=url title=> Prostě veškerý html bez uvozovek, tak to předělávám taky, i když to funguje bez :)
A ta struktura, kterou jsem posílal výše, je taková, kterou bych si přál, tohle je maximální 2x odřádkovaný :D
joe
Profil
Medvídek:
Hledání v případě nezvýrazňování je přece stejný. Najedu myší tam, kde začíná řádek a chci najít konečnou značku, tak scrolluju do té doby, než na řádku něco je.

(A že by bylo malé odsazení? Správné má být s TABy, kde se dá nastavit, jak kdo potřebuje :-))
Miloš
Profil
joe:
Není pravda. Například v PSPadu na zkratku Ctrl+M skočím na související závorku (textový kurzor kurzor před závorku).
Medvídek
Profil
joe:
Ale pokud by si měl dělat tab u každé podmínky, tak to jsi u složitějších skriptů někde na 200 sloupci :)
Miloš
Profil
A bez závorek bych musel začátek/konec hledat, scrollovat jak mlmoň. Se závorkou tam skočím hned. Vím, že mi to nepomůže, když chci celý ten blok vidět, ale i tak zkrátka považuju závorky za výhodnější.
joe
Profil
Miloš:
Není pravda. Například v PSPadu na zkratku Ctrl+M skočím...
Myslel jsem v editorech, které něco takového nepodporují vůbec.

Medvídek:
Velikost tabulátoru se dá nastavit. A snad ještě nikdy se mi nestalo, abych zanořoval třeba víc jak 10x.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0