me se php na systemove skriptovani vcelku osvedcilo - napriklad generovani pdf z textovych podkladu a automaticky tisk (njn, kdyz uz ma prijit upominka, tak at je aspon hezka, ze?). potesilo me, jak to slo lehce.
To já bych jí celkem chápal. Jazyk, který nepoužívá namespaces, a má tedy v "root namespace" potenciálně tuny klíčových slov. Jazyk, který používá syntaxi moje_funkce, MojeFunkce i mojeFunkce. Jazyk, kde se píše array_search(co, kde), a strpos(kde, co) - tedy bordel v pořadí parametru i syntaxi. Jazyk, kde je pro MySQL interface mysqli a mysql (samo o sobě nekoncepční), a používá se mysql_query($query, $db) a mysqli_query($db, $query).
Používání PHP těžko obhajovat tím, že ho psali amatéři. To může věc vysvětlit, ale nikoliv omluvit, natož nedostatky eliminovat.
Vše co uvádíte jsou jen samé kosmetické prkotiny. Kdo má k programování vlohy, tomu to nemůže vadit, kdo ne, tomu by jejich nepřítomnost stejně nepomohla.
Kdo ma k programovani vlohy, tak dela v PHP pouze pokud je k tomu donucen okolnostma, protoze jak pozna jazyky rozumnejsi jazyky, tak da od PHP ruce pryc a uz snim radsi nechce nic mit.....
A i toto:
> PHP, které patří na weby a na systémové skriptování se příliš nehodí, o programování složitějších
> aplikací ani nemluvě.
naznacuje, ze autor PHP nezna. Kdyby vedel co vsechno se v tom da udelat..... a jak.
Miluju to! :) Kazdy do PHP sije, ale v dalsi fazi zjistim, ze o PHP nema ani paru a ze nadavat na PHP je proste IN, tak nadava.
Jiste - je cela rada cunatek, co prave zjistili k cemu je echo a if a zacnou "programovat".... Pak je to utrpeni..... Ale to uz jsem videl i jinde. PHP ma povest jednoducheho nastroje a tak pred nim cela rada zacatecniku nema "posvatnou uctu" (jednoduse receno) a rada mazaku ho bez rozmyslu zavrhne.
Pravda je ta, ze PHP lze pouzivat "jednoduse" a i cunatko si v tom udela co potrebuje. Ale moc dobre vim, ze PHP dokaze byt i velice mocny nastroj. Sam mam par zarezu predstavujicich opravdu hodne velke projekty v PHP...... To prosim nemluvim o nejakem CMS a podobne....
A fajn je, kdyz znate streva PHP/Zendu a muzete si udelat sem tam nejaky modulek, sem tam pouzit Zend do jine aplikace....
No, sam delam v PHP uz asi pres 3.5 roku a sam na nej nadavam. Potom co jsem se naucil jiny jazyky (Python, C++) tak vidim plno nevyhod PHP, nemluve o obrovskych zmenach mezi verzemi. I kdyz mohou byt tyto zmeny posunem dopredu, casto meni PHP tolik, ze se musi clovek naucit plno veci znovu. Je sice fakt ze jsem jej jednou pouzil pro posun titulek k filmu, protoze jsem po ruce zrovna nemel nic jineho a byl to pro me nejjednodussi zpusob, ale slo by to udelat rozhodne rychleji a lepe v jinem jazyku :)
Správně! Proč by nemohl být BASIC tím pravým ořechovým - hlavně když to uklohnili v microsoftí kuchyni, je to pro LO dostatečným důvodem k jásotu.
Že vás to ještě baví, vy za to opravdu musíte být placený. Je to jako by byl někdo placený za to, že do vědeckých diskusí neustále píše, jak evoluce nefunguje a jak je země placatá a spočívá na hřbetě obrovské želvy.
PHP znam vic nez by se mi libilo. Objektivne existuje spoustu duvodu proti jeho pouziti (kaslani na zpetnou kompatibilitu vic nez je nutne, laxni pristup vyvojaru, zabugovanost, objekty pofiderni, naprosta ignorace principle of least surprise, rychle take moc neni...). Pokud se nekomu libi, rozhodne mu to nebudu vymlouvat.
Ja tiez som parkrat pouzil PHP na spracovanie textu a nemozem si stazovat. Inak by ma strasne zaujimalo ze preco sa podla autora PHP nehodi na vacsie projekty. Poznam par informacnych systemov urobenych v PHP a verte tomu ze maju o cca 80% nizsie HW naroky ako nieco urobene v jave s rovnakym rozsahom. Vela veci je o sposobe programovania a nie o programovacom jazyku.
Javaci vacsinou programovat nevedia a spoliehaju sa na to, ze ich produkt je dobry preto lebo je spraveny v jave.
:) to potom ja mozem pvedat ze, zamestnat ako progrmatora cloveka co nerobil v nicom inom ako php je dost velky risk. Programovat viem, a myslim ze na vacsich projektov php nema vo vykone proti jave sancu. Samozrejmne da sa aj jave pisat neefiktvne, ale oproti php mam k dispozii singletony, mozem si cachovat casto pouzivane veci, a vdaka jit je java aj celkom rychla.
Heh, no tak zamestnat programatora, ktory robi iba v jednom jazyku je dost velke riziko - ci je to php alebo java...
Java je sice v konecnom dosledku rychlejsia ale ma ma vacsie HW naroky pri vsetkych tych vrstvach a doplnkoch co potrebuje aby sa v nej nieco vyprodukovalo.
Cachovat sa daju aj php skripty, akurat sa nedaju cachovat data, co je niekedy dost na skodu.
A myslim, ze okrem bankovych IS v SK alebo CZ sa nerobia take robustne systemy ze by vyzadovali javu. Ja sa teraz celkom zacinam zaujimat o Python.
Mimochodom tu su benchmarky pre porovnavanie jazykov :)
mam takeho kolegu a ide ma niekedy slak trafit :) Java mozno ma o nieco vyssie naroky ale ako hovorim zavisi aj od aplikacie, napr. abclinuxu.cz nebezi na nejakom super silnom stroji a ide dost rychlo. Prave robim na jednom celkom robustnom systeme, ktory je pisany v Jave, a neviem si nieco podobneho predstavit v php. V php mi chyba poriadny ORM framework, a poriadne OOP, a vseobecne nedoverujem slabo typovym jazykom.
Pri cteni tohoto benchmarku je treba mit na pameti, ze hojne vyuziva floating point aritmetiku, coz je rozdil oproti prevazne vetsine programu a navic implementace floating point aritmetiky v dynamickych jazycich je problematicka.
Pokud myslime oba stejne singletony, tak je lze pouzit i v PHP, obdone factory a dalsi patterny, abstract tridy ci metody, interface apod. Stejne tak i cache. Celkem mocne jsou veci z PECLu a ono i PEARu, ale bohuzel o nich vetsina lidi "programujicich" v PHP ani nevi. Napr. pro cache je celkem rozumne reseni memcache daemon, pro ktery je v PHP wrapper. V PHP lze celkem slusne psat i GTK aplikace. V glade se navrhne GUI a v PHP se jiz jen importne XML + autoconnect na obsluhu eventu. V jedne firme, kde jsme delal, meli aplikaci pro zadavani dat do DB v Accessu (ja vim, des). S pribyvajicimi daty se stala nepouzitelna. Stacilo ji prepsat do PHP-GTK + mySQL a mohla byt vyuzivana i na PC, ktera byla jinak urcena pro vyrazeni. Bylo pouzivano i genrovani XLS ci PDF reportu z accessu. Puvodni doba behu nekolik hodin (DB radove v GB), po prepsani do PHP radove desitky minut. Jasne, srovnavat s MS mozna neni uplne fer, ale bylo spis jako priklad pouziti. V PHP lze bez problemu napsat i daemona. To jsem napr. pouzil pro "cache" dat. Apache request se pres local socket pripoji na PHP daemona, ktery si drzi data perzistentne v pameti a provede nad nimi operaci, jejiz vysledek vrati puvodnimu requestu. Do daemona se implementovala i cast vyuzivajici runkit a tak je mozne se pres "admin port" pripojit a predat mu pozadavek napr. na pridani nove class, metody, upravu stavajicich apod. a to bez nutnosti restartu serveru. Idelani pro aplikace, kde je jakakoliv nedostupnost kriticka. PHP jsem pouzil i pro psani aplikace nad ncurses, opet bez problemu. Existuji pro nej profilery, debuggery (apd, xdebug), moznost debuggovat napr. i ve VIMu :) Diky tokenizeru existuji nastroje pro vytvoreni UML z existujiciho kodu, nebo naopak pro vytvoreni "kostry" z UML. Z javy prevzaty PHPDoc nebo PHPUnit pro unit testy. S moznosti generovani agilni dokumentace ci propojeni se Selenium RC pro testovani weboveho interface "simulovanim chovani uzivatele". Jde jen o to, jestli chce clovek brat PHP jako plnohodnotny jazyk nebo berlicku pro lamy. Ale ma samozrejme i sve chyby. Nekonzistentni naming convention (dano historickymi duvody), zpetna nekompatibilita, hlavne mezi major verzemi, apod. PHP obcas pouzivam i jen v CLI pro drobna zpracovani textu, vypocty apod. Ale vetsinou spis grep, gawk, sed, tr a haldu pipes :)
S dovolení srovnání s MS Access je naprosto mimo, pokud je jako backend použit MS Jet. Architektura je pak podobná nejvíce FoxPro for DOS, jenom UI je v grafice.
A naopak pokud je jako backend použit běžný DB negine (třeba MS SQL Server), je MS Access coby front-end poměrně rychlý. Výhodou navíc je, že VBA umí každý, kdo se naučil psát makra v MS Office.
Toho jsem si vedom, take jsem hned v puvodnim postu uvedl, ze srovnani neni uplne koser a ze to bylo "spis jako priklad pouziti". Navic v tomto pripade neslo o Jet. Byl pouzivan puvodne, ale v dobe, kdy jsem se k tomu dostal ja, uz muj predchudce musel data migrovat na mySQL server a s puvodnimi MS Access aplikacemi byl propojen pres ODBC. I tak byla rychlost v porovnani s PHP RADOVE horsi. Nehlede na pametove naroky.
Ano, je to dobre pro rychle "naklikani" aplikace a dopsani jen kousku kodu (zde ve VBA), ale jak uz jsem psal, to je mozne i v PHP-GTK + Glade. Nerikam, ze PHP je nutne pro takove aplikace nejlepsim resenim, natoz jedine mozne, ale pouze to, ze i v PHP se lze touto cestou snadno dat a neni tak omezene, jak je v dnesni dobe popularni tvrdit.
Používat Access proti MySQL jsem nezkoušel (třeba je mizerný vyjma MySQL i použitý ODBC provider pro Windows). Proč by to vůbec někdo dělal, když je možné použít daleko kvalitnější free verzi MS SQL Serveru?
Samozřejmě udělat se dá lecos. Třeba spustit Access, který je součástí instalaci lepších verzí Office, a v makro jazyku používaném v celém MS Office napsat v slušném IDE výslednou aplikaci. Ta samozřejmě může využívat veškeré COM objekty, Win32 API, atd. Nebo lze udělat to, co jste zmínil vy. Jenže varianta s MS Access je daleko lépe průchodná, dává lepší možnosti, vyšší produktivitu i lepší komfort vývoje.
Tohle je otazka pristupu a nazoru. Osobne nesouhlasim s tim, ze varianta MS Access je lepe pruchodna, dava lepsi moznosti, komfort apod. Je to omezene pouze na MS platformu, systemove naroky radsi ponecham stranou :D
"Slusne IDE" existuje samozrejme i pro PHP, vcetne RAD. Ze VBA je jazyk puzivany v celem MS Office nehralo zadnou roli. Slo o to, aby aplikace porvadly to, co od nich byl ocekavano, tedy zpracovani dat. To varianta s PHP splnila nad ocekavani vedeni firmy. Nejen, ze data byla zpracovavana radove nekolikrat rychleji, ale bylo mozne se zbavit napr. nutnosti kupovat licence na MS Windows a MS Office pro kazdy pocitac, bylo mozne bez problemu s vykonnosti pouzit i diskless thin clienty, na kterych by nebylo mozne provozvat ani MS Win, natoz MS Access. PHP-GTK aplikace byly multiplatformni a kdo mel potrebu, nemusel je poustet pod linuxem, ale i ve win ci Mac OS. Ve vyctu vyhod by se dalo pokracovat dale, ale 1) je pro mne osobne cas relativne drahou komoditou a 2) patrne nema cenu Vas o nich presvedcovat. Je zcela zrejme, jaky pristup preferujete Vy a moji snahou opravdu neni Vam ho vyvracet. Kazdy at pouziva to, co mu vyhovuje a co mu je blizke. Pouze jsem zde v diskusi chtel uvest neco malo o PHP, co ne kazdy tusi. To jsem, alespon z meho, pohledu ucinil a, kdo bude chtit, si z toho neco vezme. Timto ukoncuji me prispivani do teto diskuse a zaroven dekuji za Vas cas nutny na predesle odpovedi.
heh, MS SQL je minimalne o rad, spis o dva pomalejsi nez MySQL a o tom ze free verze neumi spoustu veci, na ktery clovek velmi rychle narazi ... (navic je sama o sobe pomalejsi nez full verze)
No ja jsem mel taky podobny napad, ze by nebylo spatne mit systemove skripty v PHP, protoze to vypadalo fakt pohodlne. Jenomze to jsem se staral o 5 serveru, na vsech stejna verze Debianu a PHP a fungovalo to krasne. Jenomze ted je tech stroju pres 60 a mit dulezite systemove veci v PHP, asi by z toho bylo akorat boleni hlavy. Navic je mi proti mysli mit treba na mailserveru PHP (zbytecny balicek na instalaci, zaplatovani,...)
Pokorne jsem se vratil k /bin/bash. Mezi Bashem v Ubuntu Feisty a treba Debianu Woody je sice rozdil, ale az na par detailu mi zatim vzdy vsechno fungovalo. Problemem jsou spise ruzne verze externich nastroju a nepohodlne "propojovani" s MySQL (sed, awk, apod. jsou nekdy pekna pakarna). Zatim jsem ale neobjevil zadnou lepsi nahradu, kterou bych nasel na prakticky kazdem stroji a ve vetsine distribuci. (pouzivam sice jenom Debian/Ubuntu, ale jeden nikdy nevi).
Perl většinou bývá všude. Kdykoliv bych musel použít awk, tak sáhnu raději po perlu, přijde mi to přenositelnější, protože perl je jen jeden a awky byvaj na ruzných systémech ruzný.
Autor clanku je nepoucitelny socialni lamer, vysledkem je ze predevsim uskodi vsem tem, kteri se opravdu chteji naucit s BASHem ci jinym shellem (napr. nekoho muze zajimat Korn Shell - ksh). To je prvni fatalni chyba. Kdyz si kdokoli vygoogli bash scripting tutorial, dozvi se informace z prvni ruky, ktere budou strucnejsi, jasnejsi, presnejsi.
Jakou cenu ma psat podobne nekvalitni a socialne zkriplene (tzn. netechnicke) clanky? Co Vas k tomu prosim vede? Vase socialni demence?