abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | Pozvánky

    V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Nová verze

    Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 1
    včera 22:11 | Nová verze

    Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.

    Ladislav Hagara | Komentářů: 3
    včera 21:11 | IT novinky

    Společnost Framework Computer představila novou vylepšenou verzi svého modulárního notebooku Framework Laptop 13 s Intel Core Ultra Series 1, displej s lepším rozlišením a novou webovou kameru. Přímo do Česka jej zatím koupit nelze.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Nová verze

    Byla vydána nová verze 2.16 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 2
    28.5. 21:22 | Zajímavý software

    TerminalTextEffects (TTE) je engine pro vizuální efekty v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 41
    28.5. 17:11 | Pozvánky

    Od čtvrtka 30. 5. do soboty 1. 6. lze v Praze navštívit Veletrh vědy, tj. největší populárně naučnou akci v České republice, kterou každoročně od roku 2015 pořádá Akademie věd ČR. Vstup zdarma.

    Ladislav Hagara | Komentářů: 13
    28.5. 14:11 | Komunita

    Canonical představil Ubuntu optimalizované pro jednodeskový počítač s RISC-V procesorem Milk-V Mars.

    Ladislav Hagara | Komentářů: 0
    27.5. 21:22 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 24.5.1 Havier. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    27.5. 19:44 | IT novinky

    Společnost xAI založena Elonem Muskem a stojící za AI LLM modelem Grok získala investici 6 miliard dolarů.

    Ladislav Hagara | Komentářů: 1
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (90%)
     (3%)
     (4%)
     (4%)
    Celkem 1001 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník
    AbcLinuxu:/ Blogy / _ / xxx / c

    c

    31.10.2010 03:51 | xxx | poslední úprava: 7.10.2011 19:56

    .        

    Hodnocení: 33 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    31.10.2010 04:45 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Prozradím Vám jedno sladké tajemství. Nenajdete žádný ideální jazyk. Je to smutné, ale takový je život.

    Vy už nevíte, co byste zkritizoval. Nejdříve básníte o nějakém ideálním OOP, seženete všechny běsy ze statických i dynamických jazyků, splantáte všechno dohromady.

    Pro jakého čerta si potřebujete zvolit, zda je metoda virtuální? Kromě honění pikosekund to k ničemu nepotřebujete – tedy se u většiny skutečných OOP jazyků se vám takové volby nedostane. A Vy to ještě zatlučete tím, že toto musí mít každý OOP jazyk.

    Jinak možná jste to nepostřehnul, ale PHP je dynamicky typovaný jazyk. Stejně jako třeba Python, Ruby, Lisp, Smalltalk, Objective-C, JavaScript a obrovská spousta jazyků. Většina čistějších OOP bývá fynamicky typována už z principu.

    Dynamicky typovaný jazyk všechno řeší za běhu. Včetně metod a property. Půlka věcí co tu chcete je, že jste si pod vlivem alkoholu spletl vlastnosti staticky a dynamicky typovaných jazyků.
    ________________ avatar 31.10.2010 05:28 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Všetko čo som tu spomenul obsahuje napr C#.

    >>Pro jakého čerta si potřebujete zvolit, zda je metoda virtuální? Kromě honění pikosekund to k ničemu nepotřebujete – tedy se u většiny skutečných OOP jazyků se vám takové volby nedostane.

    U vačšiny? U vačšiny mainstreamových jazykov(C++, C#, Visual Basic, Pascal / Delphi) si môžem zvoliť či bude metóda virtuálna. Jediné mainstramové OO jazyky ktoré túto možnosť nepodporujú sú Java a PHP. Potrebujem to kôli tomu aby som mohol zamedziť tomu aby iný developer moju metódu v inom objekte prepísal aj v rodičovskej triede. Sú prípady keď to neni vhodné. Predsa objekt je čierna skrinka a ja ako developer určujem ako s ňou môžu ostatní developeri zaobchádzať, ja povolujem čo sa s mojou triedou môže a nemôže robiť predsa to je jeden zo základnych pilierov OOP. Je to dôležité kôli bezpečnosti, a udržaťelnosti kódu, ak takúto možnosť nemám tak je to mínus.
    31.10.2010 06:53 janik | blog: janko
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP

    >>Pro jakého čerta si potřebujete zvolit, zda je metoda virtuální? Kromě honění pikosekund to k ničemu nepotřebujete – tedy se u většiny skutečných OOP jazyků se vám takové volby nedostane.

    U vačšiny? U vačšiny mainstreamových jazykov(C++, C#, Visual Basic, Pascal / Delphi) si môžem zvoliť či bude metóda virtuálna.
    Asi to bude tym, ze vyraz "skutocne OOP jazyky" a vyraz "mainstreamove jazyky" oznacuju disjunktne mnoziny.
    ________________ avatar 31.10.2010 08:49 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    A čo je teda prvý OO jazyk? A čo je kritériom jeho pravosti? Smalltalk? Keď sme už pritom prvý OO jazyk bola Simula 67 a tá sa viac podobá na mainstreamové OO jazyky ako na nejaký Smalltalk, ktorý sa v praxi medzi developermi moc neujal.
    31.10.2010 21:16 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Smalltalk, ktorý sa v praxi medzi developermi moc neujal.

    Spousta old school věcí je ve smalltalku. Navíc lekce naučené ve smalltalku tak nějak daly směr moderním OO jazykům.
    In Ada the typical infinite loop would normally be terminated by detonation.
    31.10.2010 21:15 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    nemožnosť zvoliť či má byť metóda virtuálna (všetky metódy sú defaultne virtuálne)
    +
    Potrebujem to kôli tomu aby som mohol zamedziť tomu aby iný developer moju metódu v inom objekte prepísal aj v rodičovskej triede.
    Tohle nějak nechápu. Pokud jsou všechny virtuální tak nepotřebujete nic označovat. Spíš by Vás mělo trápit že si nemůžete označit která *není* virtuální. Ale proč byste to dělal?

    Jinak...
    je to neobjektové, neprehľadné a neintuitívne a a každá PHP knižničná funkcia má iné poradie parametrov.
    Tohle mě sere taky, nechápu kterej magor to takhle udělal.

    Nepište o PHP dlouhé články, ale vykašlete se na něj. A na všechny deriváty na něm postavené (drupal...) taky.
    In Ada the typical infinite loop would normally be terminated by detonation.
    Chytrex avatar 1.11.2010 13:09 Chytrex | skóre: 30 | Bohumín
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Ach jo, brečíš na špatném hrobě.. PHP nebyl původně zamýšlen jako OOP jazyk.. To dobastlili až posléze.. Nevím tedy proč si stěžuješ.. Navíc PHP a bezpečnost?:) úsměvná představa.. PHP je pouze bastl který pomáhá v rychlejším nabastlení webu. Víc bych v tom nehledal.. Pokud bys v něm nehledal taky víc než to je, ušetřil bys čtvrthodinu pláče:)
    Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
    2.11.2010 08:55 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Jediné mainstramové OO jazyky ktoré túto možnosť nepodporujú sú Java a PHP. Potrebujem to kôli tomu aby som mohol zamedziť tomu aby iný developer moju metódu v inom objekte prepísal aj v rodičovskej triede.
    Pokud se to pochopil správně, jde vám o to, aby vaše metody nebyly předefinovatelné v potomkovi. Na to existuje klíčové slovo final.
    When your hammer is C++, everything begins to look like a thumb.
    22.1.2011 13:59 ffrr
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    "Jediné mainstramové OO jazyky ktoré túto možnosť nepodporujú sú Java a PHP." - To, ze Java nepozna keyword virtual, neznamena, ze si nemozes zvolit, ci je dana metoda virtualna - o com inom by bolo klucove slovo final? V C# su vsetky metody implicitne non-virtual, v pripade Javy je to naopak (co moze byt predmetom zurivych optimalizacnych debat) - ale nie je pravda, ze to Java nepodporuje.
    ________________ avatar 31.10.2010 05:34 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    >>Kromě honění pikosekund to k ničemu nepotřebujete

    lenže tých pár milisekúnd sa zvykne nazbierať a preto potrebujeme stále výkonnejšie počítače lebo väčšina dnešných programátorov rozmýšľa ako vy.
    31.10.2010 06:55 janik | blog: janko
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Pouzivanim C# ziskate uurcite tie milisekundy nazad. Ked chcete rychlost, piste weby v C. Ja radsej volim prehladnost kodu.
    31.10.2010 07:47 Arnošt Málek | skóre: 17
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Pokud potrebujes honit milisekundy, neprogramuj objektove, ale v co nejnizsim jazyce ... takze minimalne C, nebo asembler, pripadne rovnou ve strojaku ;-)

    Rychlejsi a vykonejsi pocitace potrebujem i kvuli OOP ... protoze programatori "zleniveli" a pisou hur nez driv. Mimo jine peknym prikladem je prave objektove programovani. Je to mocny nastroj, ale mel by se pouzivat s rozumem. Je spousta veci, kde pouzivat objekty je zbytecne.

    Mimochodem, tohle ja taky pekny nesmysl:
    k sa snažíte v PHP programovať objektovo (čo je nutnosť ak chcete mať elegantný, bezpečný kód)
    Elegantni a bezpecny kod absolutne nema zadnou souvislost s objektovym programovanim ...
    Marek Bernát avatar 31.10.2010 08:05 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Pokud potrebujes honit milisekundy, neprogramuj objektove, ale v co nejnizsim jazyce ... takze minimalne C, nebo asembler, pripadne rovnou ve strojaku ;-)
    Skutočne? Ono už to C býva občas rýchlejšie ako assembler, ak máte agresívne optimalizujúci kompilátor. Vo vyšších jazykoch sa dá dosiahnuť ešte vyššie zrýchlenie, vďaka kope sémantických informácií, ktoré kompilátor má k dispozícií, ale Vy ich pochopiteľne nevidíte (ak sa Vám teda nechce preliezať milión riadkov kódu...) ;-) Samozrejme sa bavíme o jazykoch aspoň trochu orientovaných na rýchlosť (Lisp, rodina ML, Haskell), kde sa dajú často dosiahnuť lepšie výsledky ako s C, hoci je kód vysokoúrovňový.
    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    31.10.2010 08:12 Arnošt Málek | skóre: 17
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Ano, to mate pravdu. Ale vychazel jsem z toho, ze se bavime o "normalnich" aplikacich. A tady bych opravdu po takovych jazycich nesahal. Ne ze by neslo napsat ucetnictvi treba v Lispu, ono by slo napsat treba i v Texu, ale je to dobry napad ;-)?
    Marek Bernát avatar 31.10.2010 10:19 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP

    Normálne aplikácie? To sú ktoré? A prečo si myslíte, že v Haskelle a Lispe sa "normálne" aplikácie (nech už je to čokoľvek) netvoria?

    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    frEon avatar 2.11.2010 09:48 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Ne ze by neslo napsat ucetnictvi treba v Lispu, ono by slo napsat treba i v Texu, ale je to dobry napad
    V Texu ne, ale v lispu urcite. A delalo by se to dobre.
    Talking about music is like dancing to architecture.
    Josef Kufner avatar 2.11.2010 10:17 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    V TeXu by to šlo. Byla by to neskutečná obluda, ale šlo by to.
    Hello world ! Segmentation fault (core dumped)
    frEon avatar 2.11.2010 15:45 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    ja vim, ja mluvil o tom, jestli to je, nebo neni dobry napad...
    Talking about music is like dancing to architecture.
    ________________ avatar 31.10.2010 08:29 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    neni všetko čiernobiele, treba nájsť rozumný kompromis medzi efektivitou a časom / cenou vývoja. ale mám pocit že ja ten kompromis ale vidím niekde inde ako vy.

    >>Elegantni a bezpecny kod absolutne nema zadnou souvislost s objektovym programovanim ...

    čiastočne to spolu súvisí aj keď súvislosť určite neni absolútna.
    31.10.2010 09:44 Matlák
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Určitě souvisí. Ovšem člověk co neumí napsat přehledný procedurální kód, nedokáže o moc přehledněji psát z objekty.
    <joke>Jo a s intellisense apod. kravinami pro princezny na hrášku jdi někam tady vládne vim!</joke>
    Chytrex avatar 1.11.2010 13:12 Chytrex | skóre: 30 | Bohumín
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    +1 ta první část..:)
    Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
    Heron avatar 31.10.2010 10:22 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    lenže tých pár milisekúnd sa zvykne nazbierať a preto potrebujeme stále výkonnejšie počítače lebo väčšina dnešných programátorov rozmýšľa ako vy

    Přečti si co se píše v nějaké 30 let staré knížce o programování a optimalizacích ;-).

    31.10.2010 18:27 JS
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Common Lisp neni striktne dynamicky typovany - typy promennych se tam daji deklarovat (pomoci declare). Common Lisp je asi nejbliz idealu, protoze se da doprogramovat na cokoliv. I kdyz je dost veci, ktere me v nem chybi, ale ty zatim nema asi zadny jazyk.
    31.10.2010 08:08 .
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    S OOP nic spolecneho nema: psani identifikatoru jako $this (ktere jednoznacne identifikuje cil volani); definice viditelnosti (ktere napr brani serializaci a casto existuje zpusob jak to obejit); vnorene tridy; staticka typova kontrola; vyraz virtualni metoda (to je navic v primem rozporu s polymorfismem); partial classes (zneprehlednuji kod a jsou spise v rozporu s oop); jmenne prostory a syntakticky cukr jako properties. Tak se mi zda, jestli ty si na objektoveho programatora jenom nehrajes, kdyz takove veci nevis.
    31.10.2010 08:11 sidik
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    V objektovom jazyku sa to rieši takto:
    
    if (string.Contains("PHP sux!"))
    V PHP takto:
    
    if (preg_match("/PHP sux/", $string))
    Moc často se jinde nevrtám ale $this-> z PHP jsem viděl třeba v Qt jako this-> nebo u MS jazyků jako me., takže nevidím rozdíl... Prostě to tak je.

    Třeba v C# jsem viděl naprosto otřesný způsob jak se připojit k databázi. V PHP stačí zavolat tři funkce, v C# ten človíček vytvářel nějakou podivnost aby to přinutil pracovat.
    ________________ avatar 31.10.2010 08:41 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Jasné že aj v iných jazykoch máš keyword this ale používaš ho len vtedy keď ho naozaj potrebuješ.
    Class
    {
    
        private a = "x";
    
        public void foo1(string a = "y")
        {
            return this.a; // vráti hodnotu x
        }
    
        public void foo1(string a = "y")
        {
            return a; // vráti hodnotu y
        }
    
    }
    ________________ avatar 31.10.2010 08:42 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    oprava:
    Class
    {
    
        private string a = "x";
    
        public string foo1(string a = "y")
        {
            return this.a; // vráti hodnotu x
        }
    
        public string foo1(string a = "y")
        {
            return a; // vráti hodnotu y
        }
    
    }
    ospravedlňujem sa som nevyspatý.
    31.10.2010 22:56 Extak
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Mě například vyhovuje styl psaní se $this, které jednoznačně identifikuje kontext a v jiných jazycích potom marně hledám lokální proměnné, které jsou ve skutečnosti properties a naopak. Takovýto argument použít jako hodnocení jazyka neschvaluji.
    31.10.2010 09:19 disorder | blog: weblog
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    zoznam sa s pythonom
    AraxoN avatar 31.10.2010 08:44 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Majú to niektorí ľudia problémy... Tak ten jazyk nepoužívaj, keď sa Ti nepáči. :-) Či?
    ________________ avatar 31.10.2010 08:53 ________________ | skóre: 5 | blog: _
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Musím :( keby som mal na výber tak PHP nepoužívam vôbec.
    Milan Lajtoš avatar 31.10.2010 09:42 Milan Lajtoš | skóre: 22 | blog: /blog/babraq
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Zbav sa PHPčka, nech to stojí koľko chce - predĺžiš si život.
    “Every great achievement was once considered impossible.”
    31.10.2010 09:48 Matlák
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    +1 :-) PHP je hrůza, a OOP v PHP je hrůza^2. Měl jsem tu čest vidět (při řešení problému s tím...) cosi co dodělává objektové chování, implementované v PHP pro PHP :-D, jedním slovem HNUS.
    frEon avatar 2.11.2010 16:03 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    vidis. a treba takovej clos je v lispu taky napsanej pro lisp a je to maximalne luxusni zalezitost. Ale je pravda, ze lisp narozdil od php pocita s tim, ze jazyk se rozsiruje smerem k vyslednemu programu, takze vysledek tomu odpovida...
    Talking about music is like dancing to architecture.
    Marek Bernát avatar 31.10.2010 10:21 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP

    +1

    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    31.10.2010 11:24 blizzy
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Na výběr je vždycky. Pokud to, co píšeš opravdu nepřekousneš, piš v něčem jiném, např. v C# je možné dělat webové aplikace na velmi slušné úrovni.

    Většina věcí, které jsi vypsal mi v PHP vadí taky, možná až na ty properties a povinný $this, s tím jsem nikdy problém neměl. Konkrétně jsem zvyklý psát ono redundantní this i v jiných objektově orientovaných jazycích, např. C++, mám prostě radši, když na první pohled vím, v jakém kontextu je proměnná deklarovaná (a neuznávám konvence typu m_variable), je to věc osobního stylu.

    I přestože je v PHP hodně věcí špatných (způsobeno hlavně dlouhou historií PHP, zpětnou kompatibilitou a leností vývojářů), tak se v PHP dá psát vcelku slušný a dobrý kód, viz např. Doctrine 2 nebo Nette Framework.
    31.10.2010 11:28 R
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    V PHP som robil niekolko mensich veci. Vzdy to bolo bez objektov a nikdy som sa na PHP nestazoval.
    31.10.2010 12:39 Kvakor
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Ano, v PHP, stejně jako v jeho "ideovém předku" C/C++ sice objekty jsou, ale až dostatečně naroubované a tudíž ve srovnání s "přirozeně-objektovými" jazyky poměrně obludné. Tak to prostě je. Pokud nepíšete objektové programy, tak je to putna a budou vám vadit úplně jiné věci (např. to, že knihovny vypadají jako něco, co vařili Pejsek s Kočičkou).
    31.10.2010 11:34 retroslava | skóre: 9 | blog: TryCatch | Žižkoff
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    To že PHP ve verzi 4 (a následně ve verzi 5 vylepšeně) umožnilo definovat třídy a vytvářet jejich instance neznamená že je to objektově orientovaný jazyk.

    Pokud hledáte nějáký plně objektově orientovaný jazyk pro web, tak můžu z vlastní zkušenosti doporučit Ruby. Jiné jako C#, Python jsem nikdy nepoužíval, tak nevím jak to chodí tam.

    Ovšem i některé vaše nářeky z blogu nad implementaci objektů v PHP plně objektově orientovaný jazyk Ruby nesplňuje (jako třeba hledání klíčového slova final). A podle mne je to jenom dobře. I tak se to ale dá obejít, protože Ruby je opravdu dynamický jazyk. Pokud chcete vědět více.

    Argument že musíte pracovat v PHP a že byste rád dělal v jiném jazyce sem ani nepište. Jste určitě svobodný člověk a práci si můžete najít klidně jinde, kde vám to bude vyhovovat. A argument typu 'hosting je jen pro PHP u nás' bych sem taky netahal. Jestli to s PHP opravdu myslíte vážně, tak určitě používáte PEAR a PECL (nač znovu objevovat kolo). A ukažte mi jak moc ho PHP hostingy podporují ? Ano, PHP hosting je velmi u nás levný a lehce dostupný. Ale stejně časem najdete omezení, které vyřeší buď plno časů zbytečného programování nebo několik nepříjemných telefonátu na podporu či přechod na vlastní server (třeba VPS za pár káblí se dá taky sehnat) a najmutí sysadmina.

    Pokud chcete být PHP programátorem, musíte se naučit ten jazyk plně používat a navrhovat kód tak, aby přesně na ten jazyk seděl. Né navrhovat kód pro uplně jiný jazyk při návrhu a pak tu logiku přenášet při programování do PHP a stěžovat si, že to nejde.
    Pozor! Jsem naprostý idiot. Co jsem napsal včera dnes už dávno neplatí. Zavazuji se, že budu diskutovat nezávazně.
    31.10.2010 17:32 YYY | skóre: 29 | blog: martinek
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    V PHP se da dobre prasit, ale lze v nem psat kvalitni kod. Stejne jako v ostatnich jazycich. Zadny jazyk neni dokonaly a vzdycky je to o cloveku...
    Marek Bernát avatar 31.10.2010 18:24 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP

    Vždycky je to o človeku? Takže aspoň v princípe sa podľa teba dá rozumne programovať v Brainfucku? Alebo v PHP... :-)

    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    okbob avatar 31.10.2010 19:35 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Přesně tak to je. Neznám jazyk ve kterém by se nedalo prasit. Stejně jako se někdo nenaučí psát v přirozeném jazyku, tak se někdo nenaučí psát v programovacím jazyku - pokud někdo nad ním nestojí s bičem v ruce :)
    Marek Bernát avatar 1.11.2010 08:34 Marek Bernát | skóre: 17 | blog: Arcadia
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP

    Ja tiež nepoznám jazyk, v ktorom by sa nedalo prasiť, ale zároveň poznám kopu jazykov, v ktorých sa dá neprasiť. Brainfuck k nim ale nepatrí určite a PHP dosť možno tiež nie :-)

    physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
    31.10.2010 23:55 YYY | skóre: 29 | blog: martinek
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Ucel brainfucku je pobavit. Ale i v brainfucku se da prasit vice nez normalne. :-) Btw mozna je povest php dana tim, ze k nemu vice tihnou prasici nez k ostatnim jazykum.
    Grunt avatar 31.10.2010 21:46 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    čo je nutnosť ak chcete mať elegantný, bezpečný kód
    A teď prosím tu o karkulce. Jinak ten matroš bych chtěl zkusit taky. Dodnes jsem nepochopil, jestli jako fakt a nebo jde o povedenou parodii. Pokud jde o parodii tak jednoznačně *THUMBS UP*.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Gilhad avatar 31.10.2010 22:28 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Asi tak :) Taky jsem napsal par veci, ktere mely kod naprosto bezpecny, elegantni a pouziti objektu by je jen zbytecne zatemnilo a zpomalilo, aniz by prineslo jakoukoli rozumnou kvalitu. (Pouziti objektu rozhodne neni kvalita sama o sobe.)
    Grunt avatar 31.10.2010 22:30 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Já hlavně do dnešního dne nepochopil k čemu je to vlastně vůbec dobré. A dost se bojím toho, že jednoho dne na to přijdu (stejně jako se v ráji idealismu jednoho dne vynořil ITčkař).
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Gilhad avatar 31.10.2010 23:23 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    No me uz se na par veci objektu docela hodily, protoze se to s nimi dalo popsat trochu prehledneji, nez bez nich. Pokud clovek objekty pouziva a nenecha se jimi tupe ovladat, tak je to jeden z moznych nastroju, jak si usnadnit reseni nekterych problemu. (ale nikoli jen jediny nastroj a nikoli vsech problemu, samozrejme).

    Napriklad delam soft, kde se ve vysledku hrajou ruzne pisnicky, zvuky a hlasky, pricemz jejich vyber je obcas dost slozity. Takze se mi hodilo mit pro ruzne druhy popisu vyberu samostatne objekty, ktere vsechny mely metodu VratZvuk(), ktera vratila objekt Zvuk (ci spis jeho potomka), ktery se umel prehrat.

    Misto abych mel funce prehrej_mp3(soubor, offset, delka, zacatek...), prehrej_wav(soubor, offset, delka, zacatek...), prehrej_ogg(soubor, offset, delka, zacatek...) atd atd a vsude mozne mel nejake switche, tak jsem mel Zvuk.prehraj() a podle typu objektu uz se provedlo nacteni, dekodovani a tak. Celkovy kod se tim o peknych par radku zkratil a zprehlednil.

    (Samozrejme by to slo opsat makry, funkcemi jako prvky datove struktury, nebo to nabusit v assemblu, ale pro dany ucel ty objekty proste byly prehlednejsi, tak jsem je tam prsknul. Pro jiny ucel to muze byt zase zcela jinak.)
    Josef Kufner avatar 1.11.2010 00:06 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Ale stejně tak bys mohl mít funkci prehrej_zvuk(...), která by obsahovala ten jediný switch, který jsi schoval pomocí dědičnosti. Ono u dynamicky typovaných jazyků funguje polymorfismus i na úrovni funkcí, nikoliv jen objektů.
    Hello world ! Segmentation fault (core dumped)
    Gilhad avatar 1.11.2010 00:34 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Jiste mohl a taky jsem to mohl udelat deseti jinymi zpusoby. Me se ale tenhle libil nejvic, protoze s temi zvuky (a nejen zvuky) se tam pracuje vic a je jednodussi pridat dalsi objekt na jedno misto a pripsat jen ty funkce, kde se to lisi, nez prolezat vsechny switche a davat to do nich.

    Proste kdyz si muzu vybrat, jestli chci mi to programu rozhazeno spoustu switchu kazdy se spoustou polozek, nebo jestli chci jednu knihovnu s objekty, kde kazda metoda je na par radku, tak mi to druhe prijde prehlednejsi. Ono i pri ladeni, kdyz vidim, ze nejde zadny zvuk, tak je chyba nejspis v obecnem kodu, kdyz nejde jen jeden typ zvuku, tak je chyba v tom jednom objektu a je to jen par desitek radek.

    Prijde mi zbytecne se objektum vyhybat, pokud je jazyk umoznuje a zprehledni to kod. Stejne tak mi prijde zbytecne rvat objekty vsude, kdyz to jde napsat prehledneji jinym zpusobem. Protoze ten program budu udrzovat asi jeste dlouho, tak ho radsi napisu tak, abych se v nem snadno orientoval a snadno ho mohl rozsirovat. Kdyz si pak za par let nekdo vzpomene, ze chce treba i podporu flacc, tak proste vezmu jeden z objektu, zkopnu ho a prepisu na flacc, misto abych lozil po celem programu, vsech knihovnach a okolnich programech a koukal, jestli tam nekde nemam v nejake funci switch se spoustou radek, ktery taky nesmim zapomenout upravit. Takhle jsou vsechny zmeny na jednom miste a zaroven se nemisi s ostatnim kodem (pribydou radky 50-120 v jednom souboru, misto aby v peti souborech pribylo po 14 radcich)
    Josef Kufner avatar 1.11.2010 01:19 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Tak ono ten switch nepotřebuješ. Klidně můžeš udělat něco jako:
    $fn = "prehraj_".$typ;
    if (function_exists($fn)) {
      $fn($zvuk, $delka, ...);
    } else {
      error("Nepodporovaný typ zvuku.");
    }
    
    ... a pak jen přidáváš funkce někam bokem. Dost podobně by se to dalo udělat i s třídama místo funkcí, ale to už je jen detail.

    Podstatný je kvalitní návrh. Implementace je až druhořadá.
    Hello world ! Segmentation fault (core dumped)
    Gilhad avatar 1.11.2010 04:08 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Porad mi prijde trochu prehlednejsi proste:

    Zvuk.prehraj()
    1.11.2010 15:05 R
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Alebo:
    enum media_type { MEDIA_SOUND, ... };
    
    struct media {
        enum media_type type;
        ...
    }
    
    void prehraj(struct media m) {
        switch(m.type) {
            case MEDIA_SOUND:
                ...
            case...
        }
    }
    
    1.11.2010 18:22 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    No, tak jsme zjistili, že dispatch (volání funkce dynamicky) se dá řešit polymorfizmem (děděním tříd), nebo if-kaskádou (resp. switch) nebo reflexí (to je takový to udělám si string a pak zkusím najít takovou funkci).

    Taky jde předávat pointry na funkce a kdovíco ještě.

    Každá z uvedených má své pro a proti a s tím, jestli je celý program napsán objektově, to nemá společného vůbec nic.
    In Ada the typical infinite loop would normally be terminated by detonation.
    pavlix avatar 2.11.2010 16:27 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Tak nějak, viz GObject :).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    31.10.2010 23:22 Extak
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Z článku jsem vycítil orientaci autora spíše směrem k silně typovaným jazykům typu C#. Z pohledu PHP prográmatora, který už s PHP pracuje nějakých těch pár zim bych chtěl říct jenom pár věcí. Stejně jaky tady autor cupuje PHP, já bych po jednom měsíci používání např. C# pravděpodobně rozcupoval ten, protože bych se jej snažil používat podle zvyku. S programovacím jazykem je obvykle spjat i nějaký důvod proč vznikal a k čemu má být určen. Z mého pohledu PHP chybí spousta a spousta věcí, ale na to k čemu je určený funguje výborně. Na tvorbu malých a středních webových projektů neznám výkonnější nástroj. Ve firmě na kritické zakázky používáme javovské technologie jako GWT, které jsou podle mě vyspělejší než celý jazyk PHP, ale jejich vývoj je také podstatně dražší. I v PHP jsou napsány mnohé velice elegantní objektové programy, viz. v komentářích zmiňované Nette, Doctrine 2 a já bych přidal můj oblíbený Yii framework.
    31.10.2010 23:43 zulu
    Rozbalit Rozbalit vše Re: Moje výhrady k PHP
    Zase nějaký "programátor"...

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.