Z praxe IT: 7 věcí, které nejvíc nesnáším na PHP

26. 5. 2014

Sdílet

 Autor: © Kheng Guan Toh - Fotolia.com
Minule jsme se podívali na pojmenovávání programovacích jazyků. Nejen pojmenovávání je hrůza, občas je hrůza i jejich používání. Shrnula jsem pár věcí, které nesnáším na PHP, a jistě se shodneme, že nás bude víc.

Jak už jsem psala, weby v podstatě už nedělám. A když už je dělám a musejí být naprogramované v PHP, občas se u toho pěkně zapotím. A snažím se srdnatě bojovat s následující velkou sedmičkou v PHP.

Přepínání kontextu je pruda

Největším problémem při psaní v PHP je potřeba neustále si pamatovat co píšete v HTML a co v PHP a pořád mezi těmi dvěma jazyky musíte přepínat. Z toho jde občas pěkně hlava kolem.


Kateřina Janulová

Kateřina Janulová

Autorka se mezi počítači pohybuje už několik let, z toho tři roky v prostředích bankovních IT. Psaní jí pomáhá odpočinout si od pracovního života pro korporace.


Markupy

Míchat serverové instrukce (PHP) s instrukcemi pro prohlížeč (HTML) je nesmysl. V Javě je to striktně odděleno. V PHP to jde sice oddělit taky a spousta lidí to i tak dělá, ale nabízí se pak otázka, proč teda píšou v PHP. To už to můžou přece rovnou napsat v Javě, že jo.

Nekonzistentní názvosloví

Používání podtržítek je kapitola sama pro sebe. php_uname podtržítko má, phpversion ne. A to jako proč? Přemýšlel nad tím vlastně někdy někdo?

A pak rozlišování velikosti písmen. Některá funkce, třeba strcmp je case-sensitive, strcasesmp není. Strpos je, ale stripos není. Že by to dělalo to „i“? Nebo slovo „case“? Kdo ví. A všechny proměnné se označují dolarem ($), zatímco konstanty ne.

Třídění

Kolik třídících funkcí tak planeta běžně potřebuje? Ve světě Javy je jedna a jednoduché rozhraní pro všechny objekty. Pokud potřebujete jiný algoritmus, můžete si jej přidat, ale vesměs stačí jen ten jeden základní. Ne tak v PHP, kde jich je bambilión a začnou se v tom ještě motat podtržítka. Člověk si i pár let po škole musí pořád smolit nějaké taháky.

Namespace

Chcete si vytvořit své vlastní funkce? Tak pečlivě zvažte, kterou verzi PHP budete používat. Namespace jsou tu až od verze 5.3. A když už se rozhodnete namespace používat, tak budete potřebovat hodně zpětných lomítek. Vůbec pozor na různé verze PHP. Často se mezi sebou velmi liší, tak abyste nebyli nemile překvapeni.

Open source má své limity

PHP je open source, ale dobré funkce, jako například kešování, jsou za prachy. Tohle je však jedna z mála věcí, která se dá pochopit, jelikož nikdo nechceme dobrovolně jíst omítku. Obzvlášť když vytvoříme něco, co používá spousta dalších lidí a živí je to.

Spousta možností a redundance

Spousta věcí se dá udělat více způsoby. Komentáře na konci řádku se značí hashem (#) nebo také dvěma lomítky. Typy float a double jsou jedno a to samé. Jednoduchost často vzala za své, jelikož si tam každý připinožil to svoje. Vypadá to, jako by to vyvíjela banda lidí, kteří se nikdy ani nepotkali.

ICTS24

Zmínila jsem jen ty nejpalčivější. Určitě se jich tam najdete více. Vtipná pointa se nekoná, zaboha jsem si nedokázala vzpomenout, jestli mi něco vadí třeba v Javě.