19th Lis 2008
6 věcí, které postrádám v PHP
PHP jako takové považuji za skvělý jazyk. Některá úskalí samozřejmě má (zejména udržování starých názvů funkcí a ne vždy logické pořadí parametrů), které vyplývají zejména ze snahy o zpětnou kompatibilitu. Na druhou stranu si myslím, že PHP nabírá dobrý směr, nemůžu se dočkat PHP 5.3 a jsem zvědavý na PHP 6 (s kterým pravděpodobně přijde na svět stable verze vynikajícího frameworku Flow3).
Přesto existují maličkosti, které bych v PHP změnil, přesněji přidal. Jedná se o změny, které by byly zpětně kompatibilní a jen by rozšířily stávající syntaxi. Bojím se ale, že do PHP se nikdy nedostanou.
Znění článku naleznete zde: 6 věcí, které postrádám v PHP
Mno jo, zlaté Ruby
zrovna ten duck typing by zbytečně přinesl bordel do kódu. Já bych radši proacoval s anonymními třídami bez přiřazení do proměnné jako
(new Zend_Date())->toString(‚abc‘);
10 let jsme vydrželi bez primitivních datových typů tak to snad přežijeme dál
JSON výraz stačí obalit json_encode() ;)
to mi prijde zbytecne, pri vetsim pouziti zasvini kod, lepsi je mit kazdou cast operace na radce, zejmena pto testovani.
Me treba v php chyby vicenasobna dedicnost a sablony ;)
oldis: Právěže ono to občas ten kód může i pročistit.
Pokud chci například regulárem vytáhnout právě 2.match, javascript to má na jeden řádek, zatímco PHP na dva. Navíc se zbytečně alokuje paměť pro všechny matches tam, kde mě skutečně zajímá jen jeden z nich.
Jiří Knesl: ano nekdy muze zprehlednit, ale nekdy muze znecitelnit, napr v c++ se da spousta veci napsat na jednu radku, napriklad ukazatel na funkci s parametry vracejici ukazatel na funkci, ale zduvodu citelnosti se pouziva substituce s rozepsanim na vic radek. jinak co se tyce alokovani pameti tak to mi jako moc velkej problem neprijde, pameti je vetsinou dostatek, a neni problem uvolnit co uz neni potreba. spis davam prednost citelnosti a jednoduchosti kodu pred usporou pameti.
Autor se trochu sekl v bodu c.4:
http://www.php.net/…ehinting.php
fos4: Autor se vůbec nesekl (a kdybyste si přečetl jiný článek třeba zde: http://www.knesl.com/…-driven.html) zjistíte, že napovídání typů používá.
PHP nemá ale type hinting pro primitivní typy, o kterých si troufnu říct, že jsou nejčastějšími parametry – a když se podíváte na příklady v článku, jsou tam v příkladu použity výhradně primitivní typy.