Proviamo a fare una lista delle cose che secondo noi mancano o sono fatte male nel PHP?
Lo scopo è... non c'è, è solo quello di parlare e di fare "autocritica" su questo linguaggio che ci piace ma che, come tutti, non è perfetto.
Mi piacerebbe si parlasse solo del PHP senza scendere in confronti con gli altri linguaggi, cosa che mi sembra sia già stata fatta abbondantemente in passato.![]()
Comincio io, poi chi vuole si accoda con aggiunte, correzioni, opinioni... o anche solo per mandarmi affanculo, se vuole
1) Assenza di supporto nativo a Unicode nel core.
Per un linguaggio web secondo me è una mancanza abbastanza pesante, quella di considerare solo stringhe monobyte. Risolveranno con PHP6.
2) Mancanza di uno standard univoco nelle regole di naming e di passaggio parametri per le funzioni built-in del linguaggio e per le estensioni. Niente da spiegare, credo sia evidente a tutti.
3) Mancanza dell'ereditarietà multipla. Qua c'è chi dice che è indispensabile, chi dice che se ne può fare volentieri a meno. A me personalmente sarebbe stata comoda in alcune occasioni, tuttavia anche senza si sopravvive.
4) Assenza di un tipo unsigned con lunghezza di bit certa, utile per le operazioni "bitwise". Non che siano all'ordine del giorno, ma può fare comodo.
5) Mancanza del type hinting per i tipi predefiniti, sebbene ritengo che uno dei vantaggi del PHP per il web sia proprio la tipizzazione di manica larga, ho apprezzato il type hinting introdotto dal PHP5 per i tipi definiti dall'utente, e sarebbe comodo anche per quelli predefiniti.
Non me ne vengono altri, al momento.![]()