clros ha scritto:riko ha scritto:Qualcuno vuole sapere la mia teoria su PHP? <g>
Perchè no?
Oh, é un linuaggio senza senso, sviluppato da persone che non sanno nemmeno ben fare il loro mestiere (qualche sviluppatore decente nel core team lo avevano, ma se ne sono andati).
Gli sviluppatori del linguaggio (non sto parlando degli utenti, ma di quelli che scrivono interprete e tutto) sono degli incompetenti: non sanno nemmeno rispondere a domande mirate sul loro stesso linguaggio. Per esempio non erano in grado di capire la domanda se le classi fossero o meno oggetti.
La domanda e' banale: la risposta pure. In Python o Ruby lo sono. In C++ no. In ObjectiveC si, in Java solo per alcuni versi (una certa manipolazione in tal senso é possibile, ma non é molto generale). Loro non sapevano rispondere sul loro stesso linguaggio.
Per non parlare delle scelte progettuali: PHP 5 é semanticamente incompatibile con PHP 4. E PHP 6 lo sará con PHP 5.
Questo non vuole dire che PHP 5 ha piú cose di PHP 4. Vuole dire che alcuni frammenti validi in entrambe le versioni, che in PHP 4 hanno una semantica, in PHP 5 ne hanno un altra.
PHP 4 ha un supporto praticamente inesistente agli oggetti. PHP 5 ce lo ha, ma é penoso. Non che questo sia un problema, in un linguaggio di basso livello. Ma visto che PHP dovrebbe essere un linguaggio di livello abbatnza alto, é una sciocchezza.
Non solo: mancano i namespace. Nel 2007 é ridicolo vedere codice come mysql_bumba_bumba. In C mi sta bene, d'altra parte C é vecchiotto. Ma in un linguaggio nuovo non avere i namespace é un'idea demenziale.
Questo comporta che tutta la libreria standard é oranizzata in modo demenziale, con nomi non consistenti fra loro.
PHP é uno dei peggiori linguaggi al momento in circolazione. Insegna tante pessime tecniche di programmazione e non favorisce ne uno stile ordinato e conservativo a-la C++, ne uno stile ordinato e dinamico alla Python, ne uno stile creativo e dinamico alla Perl: vavorisce uno stile disordinato e verboso.
Non a caso i progetti in PHP sono fra i piú buggati della storia.
Tornando a cose oggettive:
il supporto alla ricorsione é penoso. Per non parlare del fatto che i moduli core non sono manco thread safe.
Alcuni link
http://spyced.blogspot.com/2005/06/why-php-sucks.html
http://maurus.net/work/php-sucks/
http://tnx.nl/php