Klávesové zkratky na tomto webu - rozšířené Na obsah stránky

porucha není na vašem přijímači

Smějeme se s Delphi for PHP

Ž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!

Karma body: 22. Líbil se vám článek?

Komentáře » přidat

  1. avatar [1] enoice: nový

    :-D hehe

    Ještě mimochodem, už se tu někdo ptal, ale odpověd nikde… Co chystáš s tím php7.org? :-)

    Posláno 18. 11. 2007 v 9.53 | Odpovědět
    Na komentář reagoval [2] Jan Škrášek
    Na komentář reagoval [3] Linus
  2. avatar [2] Jan Škrášek: nový

    [1] enoice: DGX planuje vlastní větev, to je jasny.. ;)

    S Delphi to šlo jednou dolů, pak nahorů, a je to teď zase dole.
    No a Delphi pro PHP je jen marný (a levný) pokus o návrat na trh. :)

    Posláno 18. 11. 2007 v 11.12 | Odpovědět
  3. avatar [3] Linus: nový

    Škoda že to takhle dopadlo, podle mě to byl celkem zajímavej nápad, představoval bych si něco jako Visual PHP .nette

    [1] enoice: To je už jasný ne? :-)

    Php7.org bude obsahovat sbírku těch asi nejkvalitnějších knihoven pro PHP.

    Posláno 18. 11. 2007 v 11.13 | Odpovědět
    Na komentář reagoval [4] tark
  4. avatar [4] tark: nový

    [3] Linus: Dibi už tam je :))

    Posláno 18. 11. 2007 v 11.45 | Odpovědět
  5. [5] Jiří Bureš: nový

    Co myslíš, jsou ti vývojaří tak:

    1. blbí,
    2. neschopní,
    3. dotlačili je k tomu manageři?

    Nebo jak si to jinak vysvětluješ?

    Posláno 18. 11. 2007 ve 12.25 | Odpovědět
    Na komentář reagoval [14] David Grudl
  6. avatar [6] Dundee: nový

    No nevím jestli je to k smíchu nebo spíš k pláči…Nechápu, jak se může někdo pokoušet o napsání kvalitního frameworku, když nezná pořádně možnosti jazyka :(

    Btw: jak to vypadá s dokončením Nette? Konec listopadu už nám pomalu klepe na dveře ;)

    Posláno 18. 11. 2007 ve 14.50 | Odpovědět
    Na komentář reagoval [7] Jiří Hon
    Na komentář reagoval [14] David Grudl
    Na komentář reagoval [19] Gringo
    Na komentář reagoval [25] tark
  7. avatar [7] Jiří Hon: nový

    [6] Dundee: BTW: Očekáváte-li Nette (už roky) stejně netrpělivě jako mnoho tvůrců webu, nechť je vám aspoň náplastí na duši PHP Seminář – Nette. Vaše oko nezůstané suché. Ať už dojetím, či smíchem.

    Posláno 18. 11. 2007 v 17.24 | Odpovědět
    Na komentář reagoval [8] The Zero
    Na komentář reagoval [18] Pavel Jaroš
  8. avatar [8] The Zero: nový

    [7] Jiří Hon: Tohle říkáš zbytečně, Dundee to jako jeden z mnoha dalších viděl naživo… a proto se ptá na listopad ;)

    Posláno 18. 11. 2007 v 18.11 | Odpovědět
  9. avatar [9] Roman: nový

    Aj ja pouzivam konstrukciu while(list($key, $val)=each($arr) neviem ci je to pre kvalitu mojho kodu klucove (urcite pisem aj podstatne horsie prasarny). Niekto pouziva uvodzovky, iny apostrofy. Niekto zacina mensi-otaznik-php a iny tam ten php nepise. Myslim ze podobny posmech by mohol nastat v 90 pripadoch zo 100 pri vzhliadnuti akehokolvek software na ktorom pracuje team viacerych ludi… aspon sa publikum trosku zasmeje… ;-)

    Posláno 18. 11. 2007 v 18.16 | Odpovědět
    Na komentář reagoval [11] Pavel Šindelka
    Na komentář reagoval [14] David Grudl
  10. [10] Martin: nový

    hehe, smazáno :-)

    Posláno 18. 11. 2007 ve 20.47 | Odpovědět
    Na komentář reagoval [21] Martin
  11. avatar [11] Pavel Šindelka: nový

    [9] Roman: No sice to nijak výrazně nevadí, ale s konstrukcí foreach je zkrátka kód výrazně čitelnější. Toť vše :)

    Posláno 18. 11. 2007 ve 21.56 | Odpovědět
  12. [12] petr: nový

    a co je za problem pri pouzivani klicoveho slova „global“ … se nesmi pouzivat?

    Posláno 19. 11. 2007 v 0.08 | Odpovědět
  13. avatar [13] Dundee: nový
    Posláno 19. 11. 2007 v 0.12 | Odpovědět
    Na komentář reagoval [16] Roman
    Na komentář reagoval [27] David Grudl
  14. avatar [14] David Grudl: nový

    [5] Jiří Bureš: představuji si Borland jako firmu co zaměstnávala ty největší mozky přes kompilátory jazyků a architekturu VCL …a ze které nejschopnější postupně odešli. Člověk si asi dovede představit, co by to udělalo s kteroukoliv úspěšnou společností. Dokonce i to VCL4PHP si nechávala dělat u externí firmy.

    [9] Roman: jenže tady hodnotím kód, který by měl být výkladní skříní firmy CodeGear, čistým a vzorovým frameworkem.

    [6] Dundee: http://meteleskublesku.cz/…8/snd/33.mp3 :-)

    Posláno 19. 11. 2007 v 1.37 | Odpovědět
    Na komentář reagoval [16] Roman
  15. avatar [15] David Grudl: nový

    Ještě pro zajímavost se podívejte jaký Delphi generuje kód :-)

    Což mi připomíná další pikošku: bez JavaScriptu ani neodešlete formulář…

    Posláno 19. 11. 2007 ve 2.22 | Odpovědět
    Na komentář reagoval [16] Roman
  16. avatar [16] Roman: nový

    [14] David Grudl: Ok ok sak ja nic, len som si vzdy myslel ze tato krasna konstrukcia okopirovana z manualu PHP je tak nadherna a revolucna. Tak sa to samozrejme dotklo mojho ega ;-). (inak som tiez tu spominanu [13] Dundee: prednasku videl v priamom prenose. Najviac sa mi pacilo ze som na predvadzani tvojho riesenia prace z URL konecne pochopil vyznam terminu wrapper. Diky ;-) [15] David Grudl: Uff.. uz chapem. Inline styly, inline javascripty, velke male pismena hadr. Riadna divocina. <div id="Button2_outer" style="Z-INDEX: 2; LEFT: 360px; WIDTH: 176px; POSITION: absolute; TOP: 48px; HEIGHT: 25px"> <input type="submit" id="Button5" name="Button5" value="Step It (10)" onclick="return Button5ClickWrapper(event, findObj('Button5SubmitEvent'), 'Button5_Button5Click')" style=" font-family: Verdana; font-size: 10px; height:25px;width:176px;" tabindex="0" />

    Posláno 19. 11. 2007 v 8.28 | Odpovědět
  17. avatar [17] Roj: nový

    Pred par dny mi jeden sikovny venkovsky opravar spravil nove auto, pac jsem s nim nacouval do zabradli, ktere jsem nevidel.

    Oprava v znackovem servisu by stala tak petilitr. S objednanim za tyden. On to udelal za patnact set a trvalo mu to dvacet minut i s poklabosenim o porschatku, co mel na dilne.

    Vyrovnani plechu a nova zadni svitilna me prisla celkem na 1540,–Kc i s praci. Na me uzasle koktani a lapani po dechu jen proste odvetil: „Kdo nic neumi, jde delat do znackoveho servisu“

    A tak je to, mili pratele, vsude se vsim :-)

    Posláno 19. 11. 2007 v 8.56 | Odpovědět
    Na komentář reagoval [23] Věroš
  18. avatar [18] Pavel Jaroš: nový

    [7] Jiří Hon: No né, přednáška Iva Lukačoviče mě minimálně pobavila, ale tohle nemá chybu, to se nedá srovnat. Pan Grudl je rozený šoumen. Vybavila se mi vzpomínka na mého profesora programování docenta Fabiána, na jehož přednáškách jsem se bavil podobně…

    Posláno 19. 11. 2007 ve 13.54 | Odpovědět
    Na komentář reagoval [20] tark
  19. avatar [19] Gringo: nový

    [6] Dundee: Za sebe bych tipnul, že Nette vyjde 30. listopadu ve 23:59:59 :-)

    Posláno 19. 11. 2007 v 15.36 | Odpovědět
    Na komentář reagoval [25] tark
  20. avatar [20] tark: nový

    [18] Pavel Jaroš: Jojo, já tady mám přednášku .. o frameworku nette .. nebo jak se to vlastně čte… HAHAHAHAHHA :D

    Posláno 19. 11. 2007 v 15.39 | Odpovědět
    Na komentář reagoval [24] Pavel Jaroš
  21. [21] Martin: nový

    ad [10] Martin: Ještě jsi mě zapomněl zablokovat, ty rozesmátej sejšne!

    Posláno 19. 11. 2007 v 16.41 | Odpovědět
    Na komentář reagoval [22] David Grudl
  22. avatar [22] David Grudl: nový

    [21] Martin: jo ty jsi ten vůl, kterému jsem jako jedinému kdy zablokoval přístup na blog?

    Posláno 19. 11. 2007 v 19.23 | Odpovědět
  23. avatar [23] Věroš: nový

    [17] Roj: díky za vysvětlení. Vždycky jsem přemýšlel, proč je značkový servis dražší. Nedávno jsem to na to přišel, všechno jim tam totiž trvá dýl. A teď už vím i proč :-)

    Posláno 20. 11. 2007 v 8.43 | Odpovědět
  24. avatar [24] Pavel Jaroš: nový

    [20] tark: „…a to je právě druhá věc, kterou vám dneska neukážu…“ :-)

    Tož já se musím též pochlubit, že podobné blbiny jsou programoval před lety i bez AJAXu ;-)

    http://jaros.ezin.cz/…n-line-herna

    Posláno 20. 11. 2007 v 8.57 | Odpovědět
    Na komentář reagoval [25] tark
  25. avatar [25] tark: nový

    [19] Gringo: [24] Pavel Jaroš: :

    z icq:

    <tark> [6] Dundee: Dundee: Za sebe bych tipnul, že Nette vyjde 30. listopadu ve 23:59:59
    <a> nerikal jsem to taky? ;-)
    <tark> jj
    <tark> 30. listopadu je patek :D
    <a> tak nic no, to bude dgx „pak byla nejaka parba…“

    Posláno 20. 11. 2007 v 16.08 | Odpovědět
  26. [26] Dr.Diesel: nový

    2 dgx: A ja si app z Delphi pustil heeec heeeec :-D Resp. na tom vlastnim Apachi, co si Delphi privlecou s sebou to tak nejak rozkouse, na jinym si to musis zaslouzit nebo nechapu na co tam ta exceptiona je. Ze zoufalstvi uz dali na FAQ, kde to je a kterak se toho elegantne komentarem zbavit :-D

    http://www.qadram.com/…ndex.php/Faq#…

    Jako samotny to Delphi se mi libi, ale jak s tim zacnete delat nejaky „vylomeniny“ jako nedej boze prejmenovavani polozek, ci formu, tak radsi vytahnete nejaky lokalni SVNko, protoze Revert bude dobrej kamarad LOL

    2 Dundee a while list LOL LOL

    2 dgx sorry za diakritiku, už to nepřepisuju …

    Posláno 20. 11. 2007 v 17.55 | Odpovědět
  27. avatar [27] David Grudl: nový

    [13] Dundee: konečne ten obrázek vidím, pořád se mi zobrazovala černá plocha.

    Tady je list()...each() použito záměrně. Obě konstrukce fungují malinko jinak. Foreach je značně rychlejší, má jednoduchou syntaxi, podporuje moderní interface Iterator a IteratorAggregate, umí iterovat nad výsledkem funkce a prochází pole tzv. externě – tedy je možné vícekrát vnořeně iterovat nad stejným polem. Kdežto list()...each() je pravým opakem. Archaická konstrukce, kde člověk nesmí zapomenout pole před procházením vyresetovat a jelikož iteruje interně, musí dbát na to, aby totéž pole neprocházela i zanořená funkce.

    Metoda fuckingQuotes ale této jinak nepříjemné vlastnosti využívá. Trik jsem poprvé viděl u Jakuba Vrány, tam je i další vysvětlení.

    Posláno 21. 11. 2007 ve 4.24 | Odpovědět
  28. avatar [28] Techi: nový

    Eclipse PDT + Zend Framework

    to je spása pro vývoj v PHP

    Posláno 22. 11. 2007 ve 2.26 | Odpovědět
    Na komentář reagoval [29] Dr.Diesel
  29. [29] Dr.Diesel: nový

    [28] Techi: PDT na notebooku ani moc ne. Otravuje to takřka pořád procesor a co pak dělá notebook… no?… ;-)

    Ad Zend: Důvod, proč právě on? …

    Posláno 23. 11. 2007 v 0.41 | Odpovědět
  30. avatar [30] Honza Odvárko: nový

    Nový program od Borlandu
    dělá si snad z lidí srandu,
    každý bajt jim zarotuje
    osmkrát – tak k čemu tu je!
    Hloupý program od Borlandu!

    Posláno 25. 11. 2007 ve 13.49 | Odpovědět
  31. avatar [31] pl4nt: nový

    ‚p.s. CodeGear neusnul na vavřínech‘

    :D hh

    Posláno 29. 11. 2007 ve 22.26 | Odpovědět

Tento článek byl uzavřen. Už není možné k němu přidávat komentáře ani hlasovat

Výtah na začátek článku na první komentář

Názory čtenářů v diskusích nejsou názory provozovatele webu, a ten za jejich obsah neodpovídá.

La Trine © 2004, 2008 David Grudl – o webu
provozuje Pachollini.

Jakékoliv užití obsahu, včetně převzetí článků nebo jejich částí, je bez předchozího písemného svolení autora zakázáno.

Ukázky zdrojových kódů smíte používat s uvedením autora a URL tohoto webu bez dalších omezení.