Že je Delphi for PHP absolutní propadák, se už nějakou dobu ví. Prohra je to naprosto zasloužená. Borland (respektive jeho pobočka CodeGear) totiž vypustil produkt, kde prakticky nic nefungovalo. Zatímco Arthur už dal Delphi sbohem u první verze, já neodolal svodům CodeGearu a zkusil si nainstalovat docela čerstvou verzi 1.5. Mohu tak potvrdit, že ani v ní si aplikaci nespustíte! (to si nedělám srandu)

Je mi upřímně smutno z toho, kam to společnost, ke které jsem vzhlížel už jako dítě, kam to dotáhla. Byl to Borland, kdo dal světu IDE, kdo přišel s revolučním Turbo Vision a ustál i smrtící přechod na Windows. Sbohem a šáteček.

Ještě než jsem Delphi for PHP odinstaloval, zlákal mou pozornost zdrojový kód frameworku VCL for PHP (pro PHP 5), který má webové aplikace pohánět. Kdyby mě někdo v tu chvíli natáčel, zaznamenal by desetiminutový plynulý morphing od němého úžasu k hlasitému smíchu.

Ať se pobavíte taky:

  • autoři neví, že PHP má konstrukci foreach a zásadně iterují přes while(list($key, $val)=each($arr) (používalo se v PHP 3)
  • neví nic o statických metodách
  • slabě tuší o privátních metodách
  • naopak klíčové slovo global používají s úspěchem (více než 70 výskytů)
  • autoři neznají konstanty tříd, vše deklarují na globální úrovni
  • kód tříd je důkladně prošpikován HTML fragmenty, dosolen JavaScriptem a špetkou CSS
  • tyto framenty mají občas syntax HTML, občas XHTML
  • názvy CSS vlastností jsou psány někde velkými písmeny, jinde malými
  • zdrojáky se jen hemží zakomentovaným kódem a různými poznámkami, z nichž některé až zarážení svou triviálností:
    //calls inherited constructor
    parent::__construct($aowner);
    

    Programátor nejspíš dlouho googlil, co ten tajemný kód znamená, že si to pak samou radostí poznamenal 🙂

  • v kódu je použito $HTTP_SERVER_VARS (zavrženo v PHP 4.1)

Fakt by mě zajímalo, který zoufalec by na tom vybudoval aplikaci 🙂

p.s. CodeGear neusnul na vavřínech a už ohlásil IDE pro Ruby on Rails nazvané 3rdRail. Připouštím, dělal jsem si z Rubystů občas srandu, ale tohle bych jim nikdy nepřál!