Komentáře k článku

Manifest miniaturního PHP

vztek, emoce, podvod

V předchozích dnech vzbudil v PHP komunitě pozornost a vlnu diskusí text Eda Finklera „The MicroPHP Manifesto“. Autor v něm upozorňuje, že ne každému a ne na všechno se vždy a univerzálně hodí velké frameworky, jako jsou Symfony nebo Zend. A je při tom radikální, jak už manifesty bývají…

Zpět na článek

138 komentářů k článku Manifest miniaturního PHP:

  1. belzebub

    jednoduche reseni: prestante pouzivat PHP

    PHP je jazyk vychazejici z Ccka – jediny duvod, proc se v nem pise je ze je relativne snadno zvladnutelny a vzhledem k „obecne znalosti Cckoidnich jazyku“ je pro mnoho lidi snadne se ho naucit. To dedictvi Ccka je pro nej, stejne jako pro jine jazyky z CCka vychazejici, prokleti. Ma proste velmi omezene vyjadrovaci schopnosti, jako vlastne kazdy imperativni jazyk. CCko je kapotovany assembler. PHP je vytuneny 2x kapotovany assembler, ale to nic nemeni na jeho omezenosti. Je to jazyk, ktery se tvari vysokourovnove, ale vysokourovnovy neni.

    Je mi jasne ze se zde objevi miliony lidi rozcilujicich se ze jsem jim pohanel jejich oblibeny jazyk, ale faktem je ze „miniaturni PHP“ mozna bude znamka punku, ale urcite ne cesta „jak z toho ven“.

    Vykaslete se na PHP. Naucte se nejaky moderni vysokourovnovy jazyk. A nezapomente mi napsat jak tomu „vubec nerozumim, protoze vsichni prece delaji v PHP“.

    1. Diskobolos

      Re: jednoduche reseni: prestante pouzivat PHP

      :-D polopravda, pololež. Za tyhle flame výkřiky by se měl dávat ban.

      Neučte se PHP, ani nějaký „moderni vysokourovnovy jazyk“. Naučte se DOBRÝ framework. To, v jakém jazyce bude, bude na druhém místě (na to přijdete záhy sami).

      Když jsme u toho PHP, tak určitě Nette. Řeší bolístku onoho punkera a lze s ním řešit i jakékoliv jiné složitosti (doslova). Z PHP se pak musíte naučit pouze syntaxi a cca. 20 funkcí.

      1. Smokie

        Re: jednoduche reseni: prestante pouzivat PHP

        A po Nette CodeIgniter, ktory je rychlejsi, prehladnejsi a jednoduchsi :)

      2. miri

        Re: jednoduche reseni: prestante pouzivat PHP

        Ne, naucte se byt programatorem: naucte se PHP, C#, je jedno co.

        Zapomente se drtit fr jako je Nette! To vam je k nicemu, protoze az pujdete hledat novy job, tak nikoho Nette zajimat nebude. Co koho vzdy zajima je zvladnuti situace, navrhnuti reseni a vyreseni. To jesli to vyresis fci, Zend frameworkem na kterem konkretni projekt jede je preci uz jedno.

        (Mimo jine: s autorem souhlasim :D, i kdyz nenapsal asi nic noveho. Posledni dobou tupe nasledovani jednoho Bozskeho, udajne vseresiciho fr (bohuzel je nejvice slyset komunita kolem Nette) je nesystemove a pro osobni vyvoj programatora z meho pohledu kratkozrake. Kdyz se jeste vratim k Nette – co budete delat az Grudla sejme autobus?).

            1. Diskobolos

              Re: jednoduche reseni: prestante pouzivat PHP

              Máš recht, každý chce do zahraničí a k tomu ty super Eura. Jak říkal Bolek – „Běž, bež a už se nevracaj!“ :-D

              PS: příště buď objektivní a dej odkaz třeba i z Jobs.cz :-)
              PS 2: chytrá „garážovka“ ví, kde je největší výskyt a tam poptává…

              1. Pepa

                Re: jednoduche reseni: prestante pouzivat PHP

                Proč si vymýšlíš něco, co jsem neřekl? Trošku Ti kulhá logika, co?

                A proč bych chodil do zahraničí? Můžu dělat „za eura“ (nebo radši za dolary) klidně z chalupy v Mníšku pod Brdy, stačí mít internet. Ovšem ne v Nette.

                Já jen že ta tvoje „pádná odpověď“ je pádná jen v malým zasmrádlým rybníčku. Pokud chce někdo z nějaký důvodu pracovat výhradě tady, tak je asi Nette slušná volba. Ale proč se omezovat, když je momentálně převis poptávky po progamátorech v JavaScriptu, Pythonu a Ruby v Londýně, New Yorku i San Franciscu.

                1. Diskobolos

                  Re: jednoduche reseni: prestante pouzivat PHP

                  Zpět na začátek – v klidu si přečti moje příspěvky. Já JEN říkám, že Nette je výborný framework, stejně jako ZendFW, ROR atd… Tvůj jediný (a omílaný) argument byl/je, že Nette není světové. To, že není rozšířené ve světě neznamená, že nemá svoje kvality. Jen jsem tomuto hloupému argumentu dělal protiváhu.

                  To, že se dá dělat pro zahraniční firmy z ČR (stejně jako to, že FW/vývojový jazyk volíme podle potřeby), všichni moc dobře víme. Hold, některé řeči se nevedou, protože jsou z povahy věci jasné a zbytečné. Téma je mikroframeworky, takže podle toho by se mělo přemýšlet…

                  1. Pepa

                    Re: jednoduche reseni: prestante pouzivat PHP

                    Proboha!!! Vymýšlíš si nesmysly a reaguješ na něco co jsem neřekl.

          1. miri

            Re: jednoduche reseni: prestante pouzivat PHP

            Taky jeden link:

            http://www.indeed.com/jobtrends?q=symfony%2C+cakephp%2C+codeigniter%2C+zend+framework%2C+nette&l=&relative=1

            To ze si najdes jeden odkaz na subdomenu nette preci nic neznamena. Ja jsem psal predevsim o tom, aby programator byl hlavne programatorem. To ze se tu zacina diskuse ohledne micro-fr (a kazdemu je snad jasne, ze na maly projekt je dobry maly fr; nebo treba i zadny) a misto odkazu, nejakych zkusenosti s nimi tu najdu hned na zacatku zase „bolistku jmenem Nette“ me mirne zklamalo…

            (To ze se tu rozjede zhava diskuse s odkazama na grudl.com, nette.org, nette.com, nette.vesmirni­lide.eu a vsemozne mnoukajici ruzky, me zas tolik neprekvapilo.)

            Dik za: codeigniter

    2. kverulant

      Re: jednoduche reseni: prestante pouzivat PHP

      Mě spíš celý ten manifest připadá jako návrat ke kořenům PHP. Prostě to je nástroj vytvořený pro psaní menších webových prezentací a ne obřích webových aplikací. A vývojáři, kteří ho chtějí používat tím starým stylem, jsou potom možná právem rozčarováni ze současného vývoje. Z tím jaký to je jazyk to vůbec nesouvisí.

    3. Leoš

      Re: jednoduche reseni: prestante pouzivat PHP

      +1

      Zdůvodnění: pokud se práce rozroste natolik, že je nutné začít používat frameworky, nebo komponentový vývoj obecně, je vhodné použít programovací jazyk který pro tento způsob vývoje má rozumnou podporu. Z dnes dostupných jazyků je to hlavně C# a Java, C# odmítám protože nefunguje mimo Windows (Mono doopravdy nefunguje dost dobře), takže používám Javu.

      1. Jaroslav Martinec

        Re: jednoduche reseni: prestante pouzivat PHP

        Javu? To je ten historický jazyk, který kdysi zabil Oracle?

        :)

        1. Jaro

          Re: jednoduche reseni: prestante pouzivat PHP

          Asi by si si mal ísť po dlhom čase trocha zakódiť do firmy, ktorá rieši reálne užívateľské požiadavky a videl by si, že bez toho historického jazyka to jednoducho nejde a že tento historický jazyk a ekosystém okolo neho je stále často najlepšou odpoveďou aj pre nové projekty. Alebo je pre teba nutnosť reštartu aplikačného/we­bového servera niečo čo fakt nemôžeš prekusnúť ?

          1. mikiqex

            Re: jednoduche reseni: prestante pouzivat PHP

            Přirostl jsem spíše k C#, Javu (nevím proč) prostě nemám rád. Nicméně když se rozhlédnu v korporátní sféře, většina toho je Java + Oracle. Třeba C je historický jazyk taky a jak se používá! :) Mimochodem, co je to na Androidu? To je taková nějaká pseudojava, ne?

            1. Vojtěch Semecký

              Re: jednoduche reseni: prestante pouzivat PHP

              Dokonce ani ne „pseudo“. V Androidu je úplně normální Java.

      2. Ivan

        Re: jednoduche reseni: prestante pouzivat PHP

        No mozna by ses mel podivat na mono ted. Provozujem na nem GIS server komplet psany v C#. Je sice o 30% pomalejsi nez MS ale ma zase jine vyhody (porizovaci cena OP systemu do farmy atd.)

        Opravdu jsem cumel kdyz jsem sebral build serveru o cca 50-100 000 radku (build byl delan na MS stroji ve VS2005) a jediny upravy co jsem musel delat v buildu bylo otocit lomitka. Fakt s tim drsne pohnuli!!!

        I

      3. Pepa

        Re: jednoduche reseni: prestante pouzivat PHP

        Ano, myslim ze presne takhle to je.
        Kdyz delam neco v OS, pouzivam bash. Nechci v nem tovir nic velkeho, jen rychle zvladnout co potrebuju.
        Kdyz chci neco rychle vyresit na webu, pouziju php. Predem ale vim, ze to nebude velky projekt.
        Kdyz to ma byt velky projekt, sahnu po nejakem vyspelejsim jazyce (osobne Java) a frameworku (osobne Wicket, Spring).

        1. Oldisy3

          Re: jednoduche reseni: prestante pouzivat PHP

          Co je to neco velkeho? I velke veci se skladaji z dilcich mensich, podle svich zkusenosti bych rekl ze je to o sebekazni, ikdyz jednodussi je pouzit neco co te vede a nenecha slapnout vedle, ale co se potom clovek nauci? kdyz se uci predevsim z chyb.

    4. Oldisy3

      Re: jednoduche reseni: prestante pouzivat PHP

      Po tom co sem se ctvrt hodiny patlal s odpovedi, kde bych ti vyvratil kazdej kousek me to prestalo bavit a napisu ti jen ze placas.

      1. Milan Stoklasa

        Re: jednoduche reseni: prestante pouzivat PHP

        Hehe!

        To mi taky často stává. Patlám příspěvek, patlám a pak řeknu „fuck off“ a zavírám záložku :)

        1. Oldisy3

          Re: jednoduche reseni: prestante pouzivat PHP

          No kdyz uz sempsal patou faktickou(odsta­vec)a teprve sem byl v pulce jeho prvniho odstavce, rekl jsem si ze to radsi shrnu.

    5. Clary

      Re: jednoduche reseni: prestante pouzivat PHP

      Používat k vývoji jazyk bez WTF faktoru není žádný adrenalin :)

    6. ---

      Re: jednoduche reseni: prestante pouzivat PHP

      Pravda je, ze ASP by bylo lepsi, ovsem ma dosti malou podporu na hostingach …

  2. Pingy

    10. hodina

    Tento článek uvolnit vždy pouze až po desáté hodině večerní a ránou s úderem páté ho zase zablokovat.

  3. David Grudl

    TOHLE. KURVA. ANI. OMYLEM.

    Super článek, z velké míry vystihuje můj pohled na věc. Jasně, počítání řádků je značně nefér a diskutabilní, ale rozumím, co se autor snažil říct.

    Docela často dělám jednoduché weby, které celé napíšu v „notepadu“ (v mém případě FAR manager), chci, aby kód neměl víc řádků, než je naprosto nezbytně nutné a nahrávat kvůli 20kB webu i se styly na hosting hafo-megabajtový framework nepřichází v úvahu už vůbec.

    Ale přitom i v těch jednoduchých webech chci použít věci, co už mám vyřešené v Nette a navyklého pohodlí se vzdát nechci. Jsem prostě líný. Z toho důvodu se dá Nette používat jako micro framework.

    Příklad: zrovna včera jsem si redesignul http://davidgrudl.com a dal k dispozici zdrojové kódy (odkryjte rožek vlevo nahoře), čistě pro inspiraci ostatním, jak takový microsite řeším. Celý web je tvořen jedním souborem index.php, který je, věřím, srozumitelný, byť pro neznalého asi méně. Zbytek jsou šablony. A framework nahraný v minifikované podobě jediného souboru, což, společně s faktem, že má plácnu dvojnásobnou velikost než jQuery, řeší psychologický blok „nechci nahrávat celej framework“.

    Nebo jiný příklad: bložík http://examples.nette.org/micro-blog, jehož zdroják tvoří též pouze index.php, a to ještě s méně řádky, než v předchozím případě. Vše ostatní je v šablonách, viz https://github.com/nette/examples/tree/master/Micro-blog/www/data/templates

    Asi bych měl napsat, proč vlastně na těch pidiwebech framework používám? Tak především si dnes neumím představit, že bych něco programoval bez Laděnky, na ostrém serveru mi bude logovat chyby (ačkoliv u statického webu asi nebudou). Především ale využiju šablonovací systém, protože už od 2 stránek chci mít oddělený layout od obsahu, vyhovuje mi jeho stručná syntaxe a spoléhám na automatické escapování. Využiju i routování, protože prostý požadavek mít URL adresy bez koncovek .php dokáže v mod_rewrite nastavit (správně!) jen bůh, viz http://phpfashion.com/hadanka-znate-mod_rewrite.

    V prvním webu se ještě používá kešování pro twitter feedy, v případě toho blogu je využit databázový layer. A taky SEO vychytávka Nette, která automaticky předejde známé chybě, kdy se při stránkování pohybem vpřed a vzad dostaneme na tutéž stránku, jen jí v URL bude navíc strašit page=1.

    A taky že při chybě se nikdy neobrazí chybové hlášky PHP, ale srozumitelná stránka http://davidgrudl.com/abrakadabra

    S tímto jsem fakt spokojený a doporučuju všem, co potřebují dělat quick ‚n dirty weby ;-)

    (Než s tím někdo začně: ano, jsem vývojář Nette, a to kvůli tomu nemůžu podobné příspěvky psát? Bylo by slušnější se srabsky skrývat za vymyšlený nick?)

    1. koja

      Re: TOHLE. KURVA. ANI. OMYLEM.

      Ten kod by me zajimal ale v Chromiu 16.0.912.63 mi rozek jaksi nechce fungovat.

      1. Paladin

        Re: TOHLE. KURVA. ANI. OMYLEM.

        @Grundl: ruzek je cool :)
        @koja: musis chytit a tahnout, napoprve mne to taky nenapadlo, jenom jsem klikal

    2. Pavel Šimerda

      Re: TOHLE. KURVA. ANI. OMYLEM.

      „Využiju i routování, protože prostý požadavek mít URL adresy bez koncovek .php dokáže v mod_rewrite nastavit (správně!) jen bůh“

      Tak to jsem asi bůh :D.

  4. Alt+F4

    Výkřik do tmy

    Když to přeženu, trochu mi to připomíná debatu old-school programátora v assembleru a někoho kdo píše např. v C/C++. Assembler bude rychlejší, minimalistický a na triviální záležitosti ideální. Přece nebudu používat žádné molochy…Ehm.

    Píšu v obou zmiňovaných frameworcích (Symfony, Zend) a bez nich už raději ani ránu. Už několikrát jsem se setkal s tím, že zadání se v průběhu vývoje dost často měnilo. To, co na začátku vypadalo jako webík o pár stranách, byl nakonec web za 120 tis. Kdybych použil jakýkoliv mini framework, později zjistil, že potřebuju něco co řeší Zend knihovny a můj mini framework mi tenhle luxus nenabízí, tak nebudu znovu vynalézat kolo a sáhnu po nich. Nakonec bych zjistil, že ze Zendu jsem použil většinu a výsledkem bude cokoliv jiného než kompaktní celek.

    Podobně je to s JS/jQuery. Proč zbytečně načítat jQuery, který má 30kB, když to napíšu na pěti řádcích, že? Napíšu si to sám, bude se mi lépe usínat nad dobře odvedenou (mojí) prací, můžu se na to spolehnout, protože jsem to přece dělal já… No, a jelikož nejsem neomylný, někde udělám chybu a mám na problémy zaděláno. Proč to všechno? Je potřeba jít cestou nejmenšího odporu. A v dnešní době si lámat hlavu nad tím, jestli někde načtu pár kilový knihovny…

    To. Kur*a. Ani. Omylem.

    BTW: Nette je jistě skvělej framework, ale straší mě představa, že na v něm bude ve firmě napsáno několik desítek webů a z nějakého důvodu by se třeba p. Grudl přestal frameworku věnovat. Co dál? Navíc Symfony i Zend dobře znají i za hranicemi. Takže Nette zatím není pro mě zajímavá záležitost, ale přeju si, abych někdy změnil názor.

    1. Diskobolos

      Re: Výkřik do tmy

      Jen aby někteří nežili v bludu – Pan Grudl dal svou praci svobodně do světa. Díky tomu (mimo jiné) kolem jeho práce vznikla silná komunita, která by jeho projekty podržela. Nemusí tě nic strašit.

      1. Milan Stoklasa

        Re: Výkřik do tmy

        Do světa? To jako že to z Brna dovezl až do Prahy?

        Grudl je sice náš malý český borec, ale svět bohužel začíná trošku dál. A tam ani o Grudlovi, ani o Nette nevědí nic :)

        1. Diskobolos

          Re: Výkřik do tmy

          Do světa = veřejně na Github. Naopak, díky Grudlovi jsme svět dohnali. K ostatnímu se nemá smysl vyjadřovat…

          1. Milan Stoklasa

            Re: Výkřik do tmy

            GitHub má pěkné statistiky. Rozdíl Nette a konkurence je řádový.

            A kde je ten svět tady https://github.com/nette/nette/contributors? Opravdu přehlídka mezinárodního úspěchu :)

            Nechci snižovat význam tohoto jistě skvělého projektu, ale buďme prosím objektivní! Buďme objektivní.

          2. Smokie

            Re: Výkřik do tmy

            Nemyslim si. Uz len kvoli tomu, ze po 2 rokoch s Nette som presiel na CodeIgniter a slintal som blahom :) Formulare, routovanie, sablony, rychlost,…toto vsetko CodeIgniter zvlada lepsie ako Nette, podstatne lepsie. Vyrazne ulahcuje pracu.

            A dokumentacia Nette? Oh moj boze… Pri nej ma castokrat, hlavne na zaciatku bolela hlava, pretoze plno veci bolo z nej nejasnych alebo tam uplne chybali. Cast veci sa dala odchytit na fore, ale niektore veci nie. A casto som aj dostaval radu „najdi si to v kode“. Tak prepacte, ale ja potrebujem pracovat a nie hladat funkcie v kode frameworku. :)

            Formulare: V CodeIgniterovi mi staci napisat formular do sablony a potom si ho v presenterovi spracovat v jednej metode. V Nette som musel kvoli formularu napisat tovarnicku, potom este dalsiu metodu na ziskanie vysledkov a potom tie vysledky spracovat v handle. To bolo velmi zdlhave a castokrat som sa musel prehamat zacat robit nejaky formular, ktory som potreboval.

            Routovanie: Pamatam sa, ked som zacinal s routami a aky to bol boj. Pridal som routu a zrazu mi ine nefungovali. Preco??? Nakoniec som zistil, ze zalezi na poradi rut. Preco??? V CodeIgniterovi mozem praskat routy v akom poradi chcem a vzdy funguju na 100%. Takto to ma fungovat. Takto je to jednoduche a efektivne.

            Sablony: V Nette som mal obrovsky problem, ze som nemohol mat zvlast layout pre frontend a zvlast layout pre backend. Aspon teda nikde som nikdy nevidel ako to urobit, ani v dokumentacii, ani na fore. V CodeIgniterovi to ide akosi samo a bez problemov.

            A Ladicka? Nic v zlom, ale to tiez nebol bohvieaky zazrak. Parkrat mi sice pomohla, ale castokrat ma odkazala na riadok v zdrojaku frameworku a nie na chybny riadok v aplikacii… To dakujem, ale to mi problemy neriesi.

            Alebo z casu na cas sa mi s Nette stavalo, ze zrazu namiesto obsahu vyskocila chybova hlaska o permission denied k temp adresaru a pritom pristupove prava nastavene boli a po refreshnuti to uz slapalo dalej ako malo. Ale vysvetlujte toto zakaznikovi. S CodeIgniterom sa mi toto ani po polroku nestalo. A ked mi uz traja zakaznici zacali tento problem hlasit, tak bolo rozhodnute. S Nette je koniec.

            Neberte toto ako zaciatok flame. To nie je flame. To su postrehy z praxe. S Nette som pracoval 2 roky, s CodeIgniterom 6 mesiacov. Viacmenej kazdy den. Par ludi od Nette ma nema v laske, pretoze som odmietol spristupnit firemnu dokumentaciu, ale to neubera vahu prave napisanym odstavcom.

            1. Nox

              Re: Výkřik do tmy

              Vidiš, mě to přijde jako učebnicový flame.

              Z příspěvku vyplívá, že jsi se vůbec neobtěžoval podívat do dokumentace na nejzákladnější věci … tudíš se vůbec nedivím, že tě nemají v lásce, když tu na základě toho ještě děláš takovéto rozbory.

              Formuláře: Tak v CI je máš asi v šabloně, v Nette zas jen v aplikaci. Co je lepší, ať si každý rozhodne sám. V Nette máš také pouze definici a zpracování, nevím o jaké záhadné třetí metodě mluvíš.

              Routování: Dokumentace CI „Routes will run in the order they are defined“ versus „V CodeIgniterovi mozem praskat routy v akom poradi chcem“ … ale možná neví, co píšou

              Šablony: Presenter::set­Layout(), obrovský problém

              Ladička: Pokud se chyba projeví až v Nette, tak je jasné, že se zobrazí tam. Nette ti samo nedokáže zjistit, kde byla prapůvodní logická příčina chyby … to by byl jen krok k tomu, aby to vytvářelo kód za tebe.
              Jinak na dané místo v kódu se dostaneš prostě tak, že klikneš o řádek níž, nevím co je na tom složitého.

              ach jo

                1. Nox

                  Re: Výkřik do tmy

                  To je to opravdu podstatné, nelze než souhlasit. Psal jsem to rychle – vyplývá, tudíž … neberu to jako vědeckou publikaci. Kromě trollování, máte něco přínosného?

              1. Smokie

                Re: Výkřik do tmy

                Ucebnicovy flame z toho robis az ty a to hned druhou vetou :) Moje postrehy vychadzaju z praxe. A tym to konci. Mozes sa aj postavit na hlavu, ale moj nazor nezmenis. Moj nazot totiz vytvorilo tebou idealizovane Nette samotne.

                1. Nox

                  Re: Výkřik do tmy

                  Máš pravdu, volil jsem asi ostřejší formulaci, než bylo záhodno. Na druhé straně ty jsi volil minimálně tak ostrý obsah, myslim že to je na stejné úrovni.

                  Neboj se, o tvoji osobu a názor mi nejde ;) chtěl jsem jen vytvořit protipól k tvému příspěvku.

                  Pokud je tvým názorem, že určité řádky (třeba ten layout) ve frameworku neexistují, i přesto že jsou vidět ve stažených zdrojových kódech a v API referenci a na fóru (např. 11 měsíců starý příspěvek) a dokumentaci (už od 0.9) … tak s tím skutečně nic neudělám, to je pravda. Ale je to podivné.

                  Nevím proč mluvíš o idealizaci, když uvádím údaje stejným způsobem, jako ty – leda bys tomu říkal „idealizovaný CodeIgniter“.

                  Moje postřehy vycházejí z praxe taktéž, jinou zkušenost než Nette mám s Kohanou (která je forkem právě „tvého“ CodeIgniteru), ale pravda krátkou.

                  1. Smokie

                    Re: Výkřik do tmy

                    Uz z prveho prispevku bolo zname, ze som do zdrojovych kodov nepozeral, pretoze o to nemam zaujem a ani cas. :)

                    A ked som tie layouty riesil, tak to nikde v dokumentacii Nette nebolo. Aspon nie na viditelnom mieste. Treba tiez chapat, ze som po layoutoch nepatral celu tu dobu ale len vtedy ked som to potreboval riesit. Co je uplne pochopitelne. A vtedy ked som to hladal, tak to tam nebolo. Okrem toho tych problemov a nedostatkov bolo viac, cize ani toto by ma nezadrzalo (za vsetky staci menovat velmi otravny bug s pristupovymi pravami k temp, to bolo neprijatelne).

                    Nette a jeho problematicka dokumentacia u mna neuspeli. Samotna dokumentacia je dost problem a nie len pre mna, ale co som vypozoroval na zdrojak.cz, tak aj pre viacero ludi (aj v tejto diskusii sa minimalne jeden nachadza). Koniec koncov aj kvoli tomu som musel napisat vlastnu dokumentaciu pre ucely toho co som robil.

                    1. David Grudl

                      Re: Výkřik do tmy

                      Nette na tom bylo ještě začátkem loňského roku s dokumentací dost bídně, což se naštěstí změnilo a dnes je spíš jeho předností. A stále se na ní pracuje a obsah roste.

                      O náhodně se projevujícím bugu s přístupovými právy slyším poprvé, obvykle v takových případech jde o bug PHP nebo nějakého patche pro PHP. Pochopitelně se v jiném frameworku projevit nemusí. Zkoušel jsi psát na forum?

                      1. Jiří Landsman

                        Re: Výkřik do tmy

                        Nastala ta změna někdy koncem roku? Myslím, že ještě tak v září v dokumentaci byly jednotlivé čísti pro různé verze a sandbox aplikace pribalena v distribuci byla zas pro jinou verzi. Ale pokud je to již sjednocené rád se na nette zase podívám :)

                2. Ani

                  Re: Výkřik do tmy

                  „Dneska jsem zatloukal hřebík a urazil jsem si prst…“

                  To je taky z praxe, vyhodíme vašechny kladiva?

                  Mě jen přijde, že si lempl, když si za dva roky nezjistíš jednoduchou metodu na setLayout, která je tak intuitivní, že snad ani meusí být nikde napsaná.

                  1. Smokie

                    Re: Výkřik do tmy

                    Uff tak takyto hlupy nazor som uz dlho necital :D

                    Co takto vymazat celu dokumentaciu Nette a nechat ten framework pouzivat iba pre tych najinteligentnej­sich, ktori si vedia domysliet kazdu triedu a metodu? :D

                    Ak by to v dokumentacii bolo (a plno dalsich veci), tak nie je problem. Takto problem vznikol a iny framework ziskal dalsich uzivatelov na ukor Nette.

                    Je pekne, ze Nette pouzivaju ludia, ktori si vedia domysliet metody, ale co z toho, ked su len traja? :)

              2. Smokie

                Re: Výkřik do tmy

                Este sa vyjadrim k jednemu bodu :)

                „Routovanie: Pamatam sa, ked som zacinal s routami a aky to bol boj. Pridal som routu a zrazu mi ine nefungovali. Preco??? Nakoniec som zistil, ze zalezi na poradi rut. Preco??? V CodeIgniterovi mozem praskat routy v akom poradi chcem a vzdy funguju na 100%. Takto to ma fungovat. Takto je to jednoduche a efektivne.“

                „Routování: Dokumentace CI „Routes will run in the order they are defined“ versus „V CodeIgniterovi mozem praskat routy v akom poradi chcem“ … ale možná neví, co píšou“

                Precitaj si nieco poriadne, nez na to zacnes reagovat. Pretoze tvoja reakcia nie je argumentom na moj bod o routovani.

                Pisal som, ze v Nette pri routach zavisi na poradi v akom su zapisane a nespravne poradie moze cast z nich alebo vsetky znefunkcnit. A pisal som, ze v CodeIgniterovi je to jedno a mozem ich praskat v akom poradi potrebujem.

                A ty na to zareagujes citaciou, ze v CI sa routy vykonaju v poradi v akom su definovane… Ako tym negujes moj argument? Nijak. Tvoj citat nehovori nic o zavislosti na poradi. Pretoze tam ziadna nie je.

      2. Karel

        Re: Výkřik do tmy

        Silná komunita? Máš na mysli tu silnou komunitu co dlouho slibovala dokumentaci, až ji David musel napsat sám?

        1. Diskobolos

          Re: Výkřik do tmy

          Chápu potřebu lidí typu Karel, kteří by chtěli mít všechno na zlatém podnosu, bez práce, zadarmo hned a třychtýřem s kanilou, co se zavede přímo do mozku.

          1) Dokumentace již existuje
          2) Díky fóru nikdo nezůstal na holičkách (pokud nebyl líný se zeptat)

          PS: Právě pro „slabinu“ v dokumentaci vznikla kolem Nette taková silná a kvalitní komunita. Kdo „vydržel“, tak tomu většinou propadl a má hlubší znalosti díky nutnosti jít svépomocí více do hloubky, poprat se s tím sám. Takoví lidé, Karle, ve vši obecnosti, jsou na tom v životě lépe.

          1. Inkvizitor

            Re: Výkřik do tmy

            Takže jinými slovy (ve vší obecnosti) komunita stojí za hovno, ale člověk, který se bez ní obešel, vyšel z té zkušenosti nakonec silnější, čímž jsi vyvrátil Karlovu námitku?

    2. https://www.google.com/accounts/o8/id?id=AItOawlnAywB4AvKqH0YGU_e_e5u8ccUwCod4kA

      Re: Výkřik do tmy

      Radsi CodeIngniter :) prijde mi jako idealni kompromis mezi „obrem“ a „trpaslike“

  5. KapitánRUM

    Názor toho pána

    Ten pán říká jen to, co už dávno ví nejeden z nás.
    Tři chytří lidé se sejdou a vyrobí jízdní kolo.
    Kolo je tak skvělé, že ho každý chce.
    To jim udělá takovou radost, že přidají zvonek.
    Hm, zvonek je fajn.
    Přidají rám z duralu nebo uhlíkových slitin, přehazovačku.
    A je to ještě lepší!
    Mají z toho takovou radost, že na zadní kolo přidělají praporek.
    Část programátorů – říkejme jim LACHTAN – umí jedinou věc, ale zato dobře, chechtat se jako debilové a tleskat. Tleskající lachtani!
    Kdo viděl živou konferenci, kde Microsoft představoval Windows 8 a Metro, tak to moc dobře zná, plnou místnost lidí a dohromady mají IQ tohoto milého stvoření: http://www.youtube.com/watch?v=DPt3KJHO8CU
    Nicméně potlesk autory povzbudí a protože už vyčerpali všechno, co mohli přidat a přitom to opravdu dávalo smysl, začnou přidávat nesmysly.
    Do zadního kola kus kelímku, který dělá takové to klap-klap-klap, zadní kolo dají z traktoru, sundají blatník pro odlehčení kola, na řidítka přidělají držák na kafe, máslo, marmeládu, hned pod sedátko umístí kotouč z cirkulárky, takže kolo umí i štípat dříví. Lachtani ale pořád tleskají, hrozně se jim to líbí. Je to tak, že některé věci jsou prostě perfektní, než se z nich stane hnusný moloch, který sice umí všechno, ale vyžaduje lidské oběti, nejlépe malé děti a panny.

    Myslete na to, až budete něco dělat.
    Jestli Vám náhodou netleskají jen LACHTANI a jestli to, co děláte, má opravdu smysl.

  6. Baldur

    Cecko se také vyvyjí

    Jen jako reakci. Céčko není rozhodně zastaralí jazyk. Hlavně s poslední verzi C++11 http://en.wikipedia.org/wiki/C%2B%2B11 je to jazyk o mnoho zajimavejší a jeden z mála v kterém si programátor sám může pomocí definic změnit syntaxy tak, aby mu více odpovídala.

    Osobně jsem překvapen tím, kde je C++ teď a když se na něj podívam a vidím konstrukce foreach apod. tak přemýšlím jestli to nakonec není přeci jen ta správna volba.

    K tématu: nepochybně PHP je dost zvláštní volba pro cokoliv, kvůli tomu že je to skript, který se vždy provádí znova a nefunguje podobně třeba jako J2EE, kde běží server nepřetržitě a jen vyřizuje požadavky. Ovšem komunita PHP udělala velký krok v před a s novýma frameworkama se v tomto jazyku sázejí weby jeden za druhým úplně vpohodě s tím, že je možné zachovat čístý kód pomocí unit testů, funkcionálních testů a end to end testů. PHP už dávno není to co bývalo, otázka je co bude dál.

      1. . Paladin

        Re: Cecko se také vyvyjí

        vic bych ocenil neco jako kompilovanou verzi php :) cely web by se zkompiloval do binarky bezici na nejakem portu a nginx by pres fastcgi posilal requesty… to by se mi dost libilo! :)

          1. . Paladin

            Re: Cecko se také vyvyjí

            No, v podstate :) Ale hiphop bezi jako samostatny „Server“ (alespon to jsem pochopil z readme), ja bych radsi videl pres fastcgi…

            1. František Kučera

              PHP vs. Java

              Ono jde spíš o „životní cyklus“ toho programu – např. v Javě máme (velmi zjednodušeně řečeno) aplikaci + sezení + požadavek. Aplikace vznikne při nasazení na server a trvá celou dobu (dny, měsíce, roky… podle toho, jak často restartuješ), inicializace se provede jen jednou a drží si stav (pokud nějaký potřebuje). Sezení vznikne, když přijde nějaký nový uživatel a opět trvá celou dobu (opět tam existuje nějaký objekt, který si drží stav). A požadavek je prostě jeden HTTP požadavek.

              Viděl jsem různé PHP frameworky, které se tohle snaží kopírovat – mají tam nějaký „bootstrap“ té „aplikace“ případně nějaké události navázané na vznik/ukončení sezení… Ale pořád je to jenom jako, protože tam nejsou žádné trvalé objekty a aplikace se inicializuje při každém HTTP požadavku vždy znova.

              Podařilo se to někomu v PHP už okopírovat tak, aby to nebylo jen jako, ale doopravdy?

              K tomu je potřeba zajistit podporu na třech úrovních:

              1) Server – interpret (případně zkompilované PHP, to je jedno) musí běžet trvale, musí tam být instance aplikace, která je společná pro všechna sezení a všechny požadavky. Pak tam musí být instance sezení, které je vázané právě na jednoho uživatele. A pak instance požadavku (to je jednoduché). Server musí zajistit bezpečnou komunikaci mezi těmito instancemi napříč vlákny. Případně i dostatečně izolovat jednotlivé aplikace (pokud jich má v rámci jednoho procesu serveru běžet víc).

              2) Framework – musí počítat s tím, že instance aplikace je jen jedna, společná pro všechny – může k ní přistupovat víc vláken a víc uživatelů. Pokud budeme chtít v jednom procesu provozovat víc aplikací běžících nad jedním frameworkem, framewrok s tím musí počítat – musí být připraven na to, že může být instanciován víckrát pro různé aplikace, nesmí mít žádné „globální proměnné“, aby se jednotlivé aplikace navzájem neovlivňovaly.

              3) Aplikace napsaná nad tím frameworkem – opět se musí vyrovnat s tím, že jedna instance aplikace je společná pro všechny (požadavky, sezení). Stejně jako v tom frameworku v ní nesmí být „prasárny“. Někdy jsem např. viděl, že aplikace dělala „bootstrap“ aplikace (a inicializaci frameworku) jinak podle toho, zda uživatel přišel po HTTP nebo HTTPS. Což funguje jen díky tomu, že se instance aplikace vytváří vždy znovu a znovu pro každý HTTP požadavek.

              Nevím, jestli je tohle v PHP vůbec dosažitelné (i kdyby v samotném PHP bylo, je potřeba ještě přepsat ty frameworky a aplikace) a hlavně jestli má vůbec smysl se o něco takového snažit (můžeme použít rovnou Javu, která už funguje už teď). PHP má svoje kouzlo v tom, že člověk může na server nasadit třeba milion aplikací a ony nespotřebovávají vůbec žádné zdroje (CPU/RAM) protože jsou to jen soubory ležící na disku – spotřebovávají až když je někdo začne používat.

              1. srigi

                Re: PHP vs. Java

                Toto sa v PHPcku neda nejak prirodzene urobit, lebo je to fakt len skript co zbehne pri kazdom requeste. Ale v dnesnej podobe PHP-5.3 uz ide o naozaj vyspely nastroj, hlavne teda na weby.

                PHP je mozne daemonizovat ako nejaku nekonecny slucku na konzole, ale nad tym by bolo treba nejaku fasadu, ktora by predstavovala webserver. A to sa uz neoplati, lebo jednoduchsie je pouzit jazyk co to vie nativne. Napr. v Pythone staci importnut wsgi.simple_ser­ver.

                1. . Paladin

                  Re: PHP vs. Java

                  njn :( no,ja bych si to predstavoval neco jako je php-fpm, akorat ze by to necetlo skripty z disku, ale obsahovalo jejich binarni podobu… a clovek by akorat ve vhostu urcil, na jaky port (ted jaky projekt) se ma dotazovat…

                  tohlesi neumim predstavit ze by bylo tak obtizne napsat…

    1. shade

      Re: Cecko se také vyvyjí

      Pobavilo mě: „Céčko …“ a „C++11″. Přemýšlím, kdy už lidi pochopí, že C a C++ nejsou stejné jazyky, i když mají na začátku stejné písmenko.

      Už jenom čekám… „Céčko není zastaralý jazyk. … Podívejte se jako ho Microsoft vylepšil v C#“ :).

  7. Gekon

    Článek o ničem

    Toto se dá pouze považovat za trapný výkřik do tmy. Nic jiného, než zviditelnění se nastartováním flame v tom nevidím. Všechny frameworky a jazyky jsou na ho*no, pokud nespecifikujeme co se bude psát.

    Psát web pro firmičku o pěti stránkách s kontaktním formulářem v Zendu je na kulku .. na druhou stranu psát firemní IS v Nette, tak bych se zas oběsil já. (Prostě na komfort Zend Frameworku a jeho rozšížení Nette nemá a upřímně ani nesmí mít .. už by to nebylo Nette)

    Současná situace okolo web prostředků na vývoj je imho ideální, je toho na výběr hodně .. py+django,ruby+ror,php s mraky framerkama … node.js,HIPHOP atd atd .. Spíše by jsem brečel nad situací okolo http(s) protokolu, který opravdu je zralý na domov důchodců

    1. Diskobolos

      Re: Článek o ničem

      „…firemní IS v Nette, tak bych se zas oběsil já…“ – opět blud. Ve společnosti (o 4500 zaměstnancích) použáváme Nette jako základ vlastního CRM/ERP frameworku a jsme velmi spokojeni. Jediný problém, který jsme ze začátku řešili, je nutnost z části používat Oracle (oci8 driver místo univerzálního pdo).

      1. Gekon

        Re: Článek o ničem

        A upřímně, proč ne ? .. Když nechcete pohodlí Zendu, tak používejte Nette na podobné projekty. Pořád to je o tom, že na výběr je z dostačného počtu možností ..

  8. maryo

    Re: Manifest miniaturního PHP

    A pak ten obri framework stahnete, chcete si udelat administraci jednoduchyho webu a zjistite, ze si ji stejne celou musite napsat sam. A to jak v Nette (Nella jeste asi neni) tak v SF2(zadnej pouzitelnej bundle).

    1. Diskobolos

      Re: Manifest miniaturního PHP

      Opět nesmysl, jako bejk. Výše uvedené platí, pokud jste začátečník nebo hlupák. Pokud máte krapet intelignece a k tomu trochu snahy, tak se (téměř jakýkoli) framework brzy naučíte. Pak není naprosto žádný problém zplodit luxusní-lightweight CRUD administraci k CMS za jednu delší pracovní směnu.

      1. wdolek

        Re: Manifest miniaturního PHP

        Myslite takovy ten CRUD co si v shellu vygenerujete pro Symfony/Doctrine, pak se chvilku bijete do prsou, jaky jste mazak a kolik casu jste si usetril… a za mesic nad tim brecite, protoze s tim uz nejde nic delat (viz vyvoj jizdniho kola vyse v diskusi)… ?

        1. Diskobolos

          Re: Manifest miniaturního PHP

          Chjo. Z kontextu jsi mohl pochopit, že nemluvím o CRUDech generovaných z příkazové řádky (to přece nezabere onu zmiňovanou směnu), ale o kódu, který si uděláš sám a máš ho 100% pod kontrolou.

      2. maryo

        Re: Manifest miniaturního PHP

        Pouzivame v praci SF2. A jasne, mame na to firemni bundle kterej tohle resi, ale nekdo ho musel napsat. K tomu, aby byl promakanej to zabere fakt vic jak jednu smenu. Asi jsem to spatne napsal, netvrdim, ze by to mela byt primo soucast frameworku, ale nejakej ten poradnej modul nebo bundle… Zkratka asi neco jako http://nella-project.org/.

        Ja jen na to, ze treba to SF2 s celkem zakladnima bundlama ma u me na disku 40MB a presto to neni zlatej gral.

  9. Martin Hasoň

    Manifest x správná volba

    Přijde mi, že daleko lepší než psát manifesty je mít přehled o dostupných technologiích a vědět, které použít na daný úkol. Díky tomu by se takového manifestu nedostaly následující rozpory:

    > Chci udržovat co nejmíň kódu
    > Chci dělat podporu co nejmenšímu kódu

    S rostoucími nároky zákazníka bude potřeba přidávat další a další funkčnost. Abych psal co nejméně kódu, musím se poohlédnout pro vhodné knihovně. Tuto knihovnu by mělo být zároveň lehké použít se zvoleným (micro)frameworkem. V této oblasti jsou na tom lépe právě „velké“ frameworky díky velkým komunitám, které vytváření rozšíření – http://bakery.cakephp.org/, http://www.yiiframework.com/extensions/ a nebo pro zmiňované Symfony2 http://knpbundles.com/.

    > Potřebuju si být jistý každým kusem kódu, co do svého projektu dám

    Pokud nechci studovat zdrojáky, tak musí být kód ověřen nějakou autoritou. A zde zase mají klasické frameworky náskok. Zend používal ověřování přispěvatelů (nyní už zrušeno). Symfony2 prošla auditem od http://www.sektioneins.de http://symfony.com/blog/symfony2-security-audit
    A jistotu zvyšuje i povědomí o kvalitě autorů daného kódu.

    > Mám rád jednoduchý, čitelný kód

    To je velmi subjektivní kritérium. Člověk zvyklý na OOP se jistě zděsí, při pohledu na kód microframeworku Limonade, zatímco ve Slimu se krásně zorientuje.

    > Chci psát kód, který je snadno testovatelný

    Přesně tak, škoda, že například zmiňovaný microframework Epiphany nemá žádné testy. Nasadit si takový framework do projektu je sebevražda.

    Ještě mě zaujalo, že autor článku dostal doporučení na komponenty ze Symfony2 a nikde nezmiňuje microframework http://silex.sensiolabs.org/ postavený právě na Symfony2.

  10. Milan Stoklasa

    Co jsem si nenapsal sám, tomu nevěřím

    …Dalším důležitým kritériem je fakt, že pokaždé, když použiju kód, který jsem nenapsal, beru na sebe závazek…

    Ano! Všechno si musím napsat sám. Nejdřív si navrhnu vlastní procesor, potom vlastní operační systém, potom vlastní webserver, potom vlastní jazyk a v něm napíšu vlastní web. A je to! Žádný technologický dluh není.

    Vzorem pro nás musí být pan David Grudl, který si napsal vlastní framework, vlastní šablonovací systém, vlastní databázovou vrstvu, vlastní generátor dokumentace, vlastní obdobu JSON, vlastní obdobu Textile…

    Vývojáři, kteří používají nedůvěryhodný cizí kód, jsou LEPIČI a měli by jít do ..ČI!

    1. Martin MalýAutor příspěvku

      Re: Co jsem si nenapsal sám, tomu nevěřím

      Z „pokaždé, když použiju kód, který jsem nenapsal, beru na sebe závazek…“ nevyplývá „všechno si musím napsat sám“

      1. František Kučera

        Re: Co jsem si nenapsal sám, tomu nevěřím

        Nevyplývá, ale je to spor – typický spor, kterých je v IT plno. Dvě rozumné poučky, které jdou proti sobě…

        1. Martin MalýAutor příspěvku

          Re: Co jsem si nenapsal sám, tomu nevěřím

          … a v takovém případě člověk použije tu vhodnější, nebo přesnější, nebo, pokud je zkušený, vezme obě jako krajní ideály a zkombinuje je. Na rozdíl od binární logiky.

          1. František Kučera

            Re: Co jsem si nenapsal sám, tomu nevěřím

            Spíš jsem narážel na to, že některé otázky jsou v teoretické rovině nerozhodnutelné a nakonec nezbývá než to jedním způsobem zkusit (výběr se provede na základě intuice, zkušenosti, věštecké koule, hození mincí…) a až pak se uvidí. Další vtip je v tom, že ani zpětně to nejde snadno vyhodnotit – nejde nasimulovat tu samou situaci a zkusit to tím druhým způsobem, protože daný projekt je neopakovatelný.

            Nějakou naději dává statistika a porovnání velkého množství projektů, ale tam záleží, k jakým datům se člověk dostane…

          2. Yenn

            Re: Co jsem si nenapsal sám, tomu nevěřím

            Tak tak, viz citát:

            „The nice thing about standards is that there are so many of them to choose from.“
            — Andrew S. Tanenbaum

      2. Milan Stoklasa

        Re: Co jsem si nenapsal sám, tomu nevěřím

        To jistě ne, ale chci upozornit na nebezpečí druhé strany mince, do kterého se mnozí velmi snadno nechají strhnout.

        Pak máme milion podobných řešení a žádné není dotažené.

        Pokud souhlasíme s heslem „volme pro každý problém jen ten nejvhodnější nástroj“, pak musíme souhlasit i s heslem „v současné době není PHP nejvhodnější nástroj pro webový vývoj, ať už malý či velký“.

        V této diskusi to už několikrát zaznělo, ale bohužel síla mladých PHP fanatiků je velká. Oni bohužel nepamatují ASM fanatiky, Fortran fanatiky, Pascal fanatiky, TurboVision fanatiky, C fanatiky, C++ fanatiky a další a další, které už si ani nevybavím :)

        Děda vám radí – zahoďte „čisté PHP“ a profesně se posuňte!

        1. Martin MalýAutor příspěvku

          Re: Co jsem si nenapsal sám, tomu nevěřím

          „chci upozornit na nebezpečí druhé strany mince, do kterého se mnozí velmi snadno nechají strhnout“ – naprosto souhlasím. Velký problém se všemi přístupy, metodikami a podobnými je, že lidé je často uchopí dogmaticky: Buď všechno, nebo nic. Buď na všechno hledám knihovnu, nebo si všechno napíšu sám. Zlatých středních cest se nedostává.
          Každý fanatismus je na h****.

        2. Diskobolos

          Re: Co jsem si nenapsal sám, tomu nevěřím

          > Děda vám radí – zahoďte „čisté PHP“ a profesně se posuňte!

          A babička laskavě pošeptá – děda je senilní, nechte ho vypovídat… :-D

    2. alancox

      Re: Co jsem si nenapsal sám, tomu nevěřím

      „Vzorem pro nás musí být pan David Grudl, který si napsal vlastní framework, vlastní šablonovací systém, vlastní databázovou vrstvu, vlastní generátor dokumentace, vlastní obdobu JSON, vlastní obdobu Textile…“

      U Davida Grudla je jedno zajímavé pokrytectví.

      Sám píše framework, ale neustále argumentuje, že doufá, že druhé už přešla ta hloupost psát si vlastní framework. Že lidé si nemají psát všechno sami, protože je to ptákovina.

      1. David Grudl

        Re: Co jsem si nenapsal sám, tomu nevěřím

        Co je na tom pokryteckého? Radím podle nejlepšího vědomí, kdo jiný by měl vědet, kolik úsilí a času stojí psát něco vlastního, aby to bylo k světu.

  11. alancox

    Bulvarizace PHP

    To je přesně důvod, argumenty v tomto článku, proč ignoruji českou komunitu PHP.

    Řeší pitomosti.

    Řeší ideologii nikoli praxi.

    České PHP a české weby kolem PHP jsou plné ideologie. Nikoho nezajímá, jestli je daná věc v PHP praktická, užitečná či jakákoli jiná, ale pouze zda je to ideologicky správně. Zda to potvrdilo největší politbyro ať je jakékoli.

    Články Martina Malého nezklamou, vždy jsou kontroverzní a ujeté mimo praxi. Zatím jsem nenašel v jeho četných článcích nic s čím bych souhlasil, ale považuji je za zajímavou psychologickou sondu podle reakcí.

    1. Diskobolos

      Re: Bulvarizace PHP

      Snadná pomoc – když ji ignoruješ (onu komunitu), tak sem nepiš a nerozčiluj se.

      Každý takový příspěvek ukazuje pouze jediné – „kvalitu“ autora, resp. jeho smýšlení, charakter. Nazdar!

    2. Martin MalýAutor příspěvku

      Re: Bulvarizace PHP

      Nejsem autor textu, je to překlad, ale beru to jako že jsem odpovědný za to, co jsem si k překladu vybral. ;)

      Každopádně mě zaujalo to s tou ideologií… V IT se vůbec často řeší ideologie a vývojáři jsou schopní se dohadovat, jestli něco porušuje (třeba) zásady MVC, místo aby řešili, jestli to je úměrné dané situaci. (Možná proto, že se „od stolu a v diskusi“ snáz posoudí to MVC než uměřenost.) Mimochodem, vy chodíte často na Roota, že? Tam ten pocit, že se řeší „ideologie místo užitečnosti“, nemíváte? ;)

            1. Čelo

              Re: Bulvarizace PHP

              Protože sem občas chodí exoti co melou nějaký nesmysly o tom, jak sami vnímají „pravé poslání“ root.cz

    1. maras

      Re: miniframework

      A to se vyplati, komentar autora na guestbooku tomu dava na zadel, pan je odbornik;-)


      lenochware 15. 08. 2011. 10:59:25
      Mimochodem ted jsem zjistil, ze php umi i zapnout podporu mbstring pro standardni funkce pomoci direktivy mbstring.overload – http://php.net/manual/en/mbstring.overload.php
      Cili to by melo ten problem vyresit i bez zasahu do zdrojoveho kodu.


  12. cleb

    Originál

    Něměl by někde v článku být odkaz na originál? Takto se to téměř vbydává za vlastní článek root.cz, což považuji téměř za plagiátorství.

      1. cleb

        Re: Originál

        Máte pravdu, je. Přesto není moc vidět – tu část textu jsem už považoval za reklamu.
        Mzslím že by mělo být možné se dostat na originál bez nutnosti číst předtím celý překlad abych v něm našel schovaný odkaz na originál.

        1. Milan Stoklasa

          Re: Originál

          Souhlas. Nahoře je podepsaný pan Malý a z perex jednoznačně rozhodně neplyne, že by mělo jít o překlad.

          Schovat tuto informaci až dolů a ještě ji nazvat „redakční poznámka“, to je prasárna.

          1. Martin MalýAutor příspěvku

            Re: Originál

            Máte recht, upravil jsem to a hodil nahoru, omlouvám se všem čtenářům, které to zmátlo.

  13. Oldisy3

    Co dodat

    Jsou zde dva hlavni proudy, jeden je „na vse pouzijeme wordpres“, a druhy je „pouzijeme to co staci a ani o chlup vice“. Druhy je mi blizssi.

    1. Diskobolos

      Re: Co dodat

      OT – já v t0to diskusi vidím také 2 proudy:
      – jeden proud se snahou o jakous-takous věcnost
      – druhý je proud hov…n :-D

    2. Balvan

      Re: Co dodat

      Skoda ze podla mna ten spravny prud je ten stredny

      1. na jednoduche 10 riadkove veci pouzijem funkciu
      2. na stredne velke weby a podla podpory pouzijem nette
      3. na nieco uplne ine (server side riesenia nieco…) pouzijem VHODNY NASTROJ (nevylucujem php)

      Ale VZDY vyberam na zaklade projektu, potreby a klineta NIKDY podla toho co sa mi paci. Nikoho z pouzivatelov vasich projektov nezaujima ci to bezi na nette alebo na co ale to ci je to FUNGUJE a je to adekvatne rychle.

      Preto hadky okolo tochto su skor kontraproduktivne a bojim sa ze len preto aby dokazali svoju pravdu pouziju nieco co nie je uplne vhodne ale zapada do autoroveho oblubeneho prudu

      1. Astapov

        Re: Co dodat

        +1 Moja rec, moja rec….

        Tak ako v Jave, C#, aj v PHP sa daju robia velke projekty – dokonca vacsie ako v Jave. Napr. taky facebook. Nechcem si ani predstavit ako by vyzeral FB urobeny v Jave… no asi by nevyzeral :)

        Vsetko je to o schopnosti programatora a nie jazyka. Kazdy jazyk ma svoje pre a proti. Myslim si ze 80% projektov spravenych v Jave by mohlo byt kludne v PHP.

  14. RDA

    Zadny framework = nejlepsi framework

    Nejlepsi pristup je nepouzivat zadne frameworky – kdo si neumi naprogramovat web sam od nuly, by se do toho poustet vubec nemel.. taky se me nelibi frameworky, ani ne kvuli pomalosti nebo komplikovanosti – ale kvuli zradnosti – nikdy si nemuzete byt jisti, ze framework neobsahuje bezpecnostni chybu nebo vyslovene backdoor.

    Bohuzel dnesni doba ale vyzaduje pouzivani frameworku, protoze co by to uz byl za webmastra, ktery nenasazuje velka reseni – by to vypadalo ze nic neumi a pak by mel nouzi o zakazky..

    1. Nox

      Re: Zadny framework = nejlepsi framework

      NotInventedHere paranoia v kombinaci s „kdo nejede na vlastnoručně vyrobeném procesoru není ajťák“, hezké :)

      Takže raději ať člověk plesá, že si napsal něco jako framework, zákazníkovi (nebo sobě) naúčtuje mnohanásobně větší časové a finanční nároky a všecho a všichni jsou v pohodě (především konkurence, která svůj projekt již dávno dokončila).

    1. Inkvizitor

      Re: a co takhle se trochu rozhlídnout kolem sebe?

      Takže v shellu se vytváří o jeden procentní bod více zajímavých věcí, než v PHP? Tyhle statistiky jsou sice zajímavé, ale nepřeceňoval bych je. Udělat si projekt ve verzi 0.0.1 a umístit ho na githubu je snadné.

  15. backup

    ja porad nerozumim tomu odeleni dat a zobrazeni

    kouknul jsem se na to nette a i tam vidim, ze v te sablone jsou jak formatovaci elementy, tak prace s daty.
    Ja kdyz sem videl prvni framework (v roce 1980 – nebyl to samozrejme web ale curses), tak vyvojari delali celou tu logiku a nejaka prezentacni vrstva vubec na zacatku neexistovala – proste se vedelo, ze nejaky zobrazovaci dil (subsystem) vyzada data (unix = text) a to zobrazi. V te presentacni vrstve se na obrazovce rozmistila policka (se jmeny z databaze) a napr. pro nejakou klavesu (=submit button) se reklo, ze to je ta, co zobrazuje data k nejakemu zadanemu identifikatoru.
    Ja jsem se poohledl po nekolika frameworkach a vsude je porad ten gulas kde jsou smichany html elementy s volanim jakychsi datovych funkci, subroutin.

    Skutecne to jinak nejde?

    1. Nox

      Re: ja porad nerozumim tomu odeleni dat a zobrazeni

      Tak ono Nette nezablokuje jeho uživatele od toho, aby si dal do šablony i logiku. Sice to nijak nepropaguje, ale pokud si tam někdo mermomocí chce dát práci s daty tak může.

      Stejně jako jde napsat blbě šablonu v Nette, tak jde napsat blbě JS s jQuery, tak jde napsat blbě program s C++, ASM, .NET fw … a všech dalších jazycích a jejich frameworcích.

      Že ti framework nenutí určitý styl neznamená přece, že to musíš napsat tak blbě, jak jen to umožňuje…

      1. mauron85

        Re: ja porad nerozumim tomu odeleni dat a zobrazeni

        No ale samotna Nette dokumentacia, obsahuje pekne vela nepeknych ukazok. Napriklad domenova logika v presenteri apod.

        1. Nox

          Re: ja porad nerozumim tomu odeleni dat a zobrazeni

          Mrknu na to a zkusím se přičinit o zlepšení. Je pravda, že ten kdo už chce používat framework, by s nějakým oddělením vrstev neměl mít velký problém

  16. Kit

    PHP je framework

    Přečetl jsem si tady toho docela dost, ale nenašel jsem názor, že samotné PHP je vlastně frameworkem. Proč se hromada vývojářů snaží napsat šablonovací systém v šablonovacím systému? Protože si chtějí práci nějak usnadnit, nechtějí se opakovat. Jistě, DRY je dobrá technika, ale nesmí se to s ní přehnat.

    Občas nahlédnu do nějaké propagované „superknihovny“ a nalézám tam komponenty, které jsou vyřešeny přímo v PHP, tedy mnohem efektivněji. Stačí je jen umět použít. Už se mi mnohokrát podařilo zredukovat velké kusy kódu na jediný řádek při zachování funkčnosti. Když si takovou knihovnu přizpůsobím pro svůj účel, zbude jen velmi malá část. Zbytek jde do binárního odpadu.

    Vývojáři by se měli naučit využívat sílu použitého jazyka. PHP už dávno není jen imperativním jazykem odvozeným z C. Dá se v něm psát objektově i funkcionálně. Pokud mi to nestačí, mohu použít další rozšíření, například databáze či jiné procesory a z PHP udělat jen jejich lepidlo.

  17. Tomáš Fejfar

    Není to jazykem

    Problém není v jazyku. PHP krom obecně známých konstrukcí umožňuje využít take extensiony – člověk by si mohl napsat vlastní framework jako extensionu a spoustu práce delegovat do výkonějšího Cčkového kódu. Jenže když hodně zákazníků požaduje minimální náklady a sdílený hosting za pár korun (=safemode + pár let stará odzkoušená verze PHP), tak je to těžké – v tom mají výhodu nové, progresivní jazyky – nic takhle omezeného pro ně není. Většinou běží samo-domo na nějakém nainstalovaném virtuálu :) Ono taky sehnat člověka na nastavení třeba linux-nginx-ror-posgresql, který ho rozumně nastaví aby byl stabilní a bezpečný neni sranda (nepočítám „odborníky“ typu „pustíš tydle apt-get a jedeš“). Ad Java – je nějaký hosting za běžné peníze, kde si můžete rozjet web na Javě – nezkoumal jsem to zevrubně, ale o ničem nevím – resp. vim o Forpsi – každopádně nabídka je hrozně omezená. A sám si to dělat nebudu. Jsem programátor, ne kutil. Nebo samozřejmě řešení typu AppEngine, ale to taky každý nechce. Široká konkurence a velká poptávka prostě žene PHP nahoru a ceny dolu a ještě dlouho mu žádný jazyk nebude v ne-enterprise použití sahat ani po kotníky ne proto, že by bylo nejlepším jazykem, ale protože je ekonomicky nevhodnější možností.

    1. Milan Stoklasa

      Re: Není to jazykem

      V době služeb typu Heroku bude někdo hledat hosting podporující RoR, případně hledat VPS a šaškovat tam s apt-get?

      Proč?

      Jsem programátor, ne kutil.

      1. DiskoKoulos

        Re: Není to jazykem

        V době služeb typu Heroku bude někdo hledat hosting podporující RoR, případně hledat VPS a šaškovat tam s apt-get?

        Proč?

        Protože jsem programátor, ne milionář. Měl jsi na Heroku pár aplikací i s databází? VPS za 2000 Kč ročně mi zvládá několik webů na Djangu a RoR, na Heroku bych se nedoplatil.

        1. Milan Stoklasa

          Re: Není to jazykem

          Tohle české šetřílkovství jsem nikdy nepochopil.

          Někdo si nechá udělat stránky za 100 000 Kč nebo rovnou aplikaci za 1 000 000 Kč a pak to provozuje u banánu za 20 Kč měsíčně.

          A ještě nutí programátora, aby složitě obcházel problémy, protože to „hosting neumí“, „nedovolí nám to tam nainstalovat“ atd. atd.

          To je pak jasné, že je všechno v php a žádné nové technologie se nekonají, protože je hosting nepodporuje.

          Heroku je sice drahé, ale funguje, jsou tam kupy hotových addonů (např. konverze videa – umí to váš VPS?), a deploy je vyřešený jedním kliknutím. Ta cena se vrátí na úsporách za vývoj a administraci.

          1. DiskoKoulos

            Re: Není to jazykem

            Ono je možná problém, že se tu oba bavíme o jiné sféře. Pár webů a aplikací za maximálně pár desítek tisíc + vlastní projekty je rozdíl oproti 1 000 000.
            Jak často potřebuješ konverzi videa? Za 10 let jsem tohle nikdy mimo stolní PC nepotřeboval.
            Není to české šetřílkovství. Prostě mi to příjde ekonomicky neefektivní.

          2. Palo

            Re: Není to jazykem

            Nechapem ta tiez. Preco by som mal za nieco co nepotrebujem platit vela ked mozem platit menej.
            Jemu to takto vyhovuje viac. Ja tiez nemam rad setrilkov ale to nie je point. Dolezite je ci je to setrenie na spravnom mieste alebo plytvanie na nespravnom mieste.
            Ak si dobry admin co si to vie spravit sam za chvilu a poriadne naco by som si to predrazene objednaval inde?

  18. 100% Lenin

    Hmm, vo čem, že to je?

    A što takóje, eto PHP? Revoljůcija, što li?
    To zase někdo zašťoural ve vosím hnízdě.

    D: Více takových šťouralů. Sebereflexe je dobrá věc. Jen dál a houšť, drazí soudruzi programátoři.

    Vše nej v n.r. 2012

  19. n0

    Chlapec má pravdu

    ..a proto ve světě ruby volím Sinatru (Padrino) když chci jednoduchou web-app a ne hned Railsy. Easy ;)

  20. ----

    Radikalni to vubec neni, neni to cesta ven, ale v PHP to nejlepsi

    Radikalni to vubec neni, je to jen pouziti cisteho rozumu ve stylu kdyz nepotrebujes dum ale jenom skrin, odnes si skrin a nesnaz se vymyslet jak presunout cely dum a po presunuti z nej tahat skrin, stoji to zbytecny cas a penize, ovsem je take pravdou, ze PHP je samo o sobe dosti slozite a toto jak uz bylo zmineno, neni uplne cesta ven, no ale co se tyce vramci PHP je to asi nejlepsi reseni.

Napsat komentář

Přihlásit se

Tato diskuse je již příliš stará, pravděpodobně již vám nikdo neodpoví. Pokud se chcete na něco zeptat, použijte diskusní server Devel.cz

Zdroj: http://www.zdrojak.cz/?p=3591