Perché PHP è così odiato? [chiuso]


17

Ultimamente mi sono imbattuto in diverse battute e fumetti su quanto PHP apparentemente terribile sia.

Come completo ignorante della lingua, perché è questo? È la mia percezione o è questa la sensazione generale generale sulla comunità di programmatori?


2
Scrivo software in c # e ascolto tutte le critiche di Microsoft, praticamente bash sull'altra lingua
Scott Selby


4
@Andy uno non dovrebbe dimenticare i post dei blog di Jeff: la singolarità di PHP

5
Non ci sono due tipi di lingue ... quelli che tutti odiano e quelli che nessuno usa.
GrandmasterB,

2
@HerrK l'unico modo in cui si può rispondere (incluso il mio) è quello delle opinioni sul perché pensi che php faccia schifo. Inoltre porterebbe a discussioni non produttive (fa schifo! No non lo fa! Java fa schifo altrettanto!). La domanda non ottimizza per le risposte valide in quanto è attualmente scritta (ciò non significa che una buona risposta non possa essere scritta). A parte questo, un buon posto per porre domande di discussione e di opinione è quello di Software Engineering Chat . Sarebbe particolarmente utile chattare con il nostro Yannis sul php e le sue percezioni nel settore.

Risposte:


29

Nota: questo è scritto da una posizione altamente supponente.

Vedi anche: PHP: A Fractal of Bad Design

Molto tempo fa, quando il Web era giovane, hai scritto un'app Web in perl. Era proprio così. Questa è stata la tua unica scelta (a meno che non ti piaccia davvero lavorare con le stringhe in C). (E sì, sto sorvolando grandi strisce di ASP e simili ... Preferirei dimenticare quei giorni.) C'erano grandi e grandi applicazioni del web scritte in perl. E c'erano molti, molti pezzi di ... beh, cazzate scritte in perl. È ancora possibile trovare loro se si guarda - script CGI buggy che qualcuno schiaffeggiato insieme che non hanno nemmeno arrivano vicino ai sanificazione loro ingressi.

Man mano che il Web diventava più intraprendente, le grandi e grandi applicazioni si trasferirono in altri framework progettati per gestire migliaia di connessioni (perl al momento no). Coloro che potevano imparare una nuova lingua passarono a Java (che era la scelta migliore per molti framework). Coloro che non potevano, beh, c'era questa lingua che assomigliava molto al perl e faceva alcune cose meglio (non c'era bisogno di biforcare un processo per ogni richiesta). Era php.

Il php è cresciuto organicamente ... se puoi chiamare organico un mostro di Frankenstein. Molti hack (sapevi che la funzione di hash originale per i nomi delle funzioni era strlen ?). Cose parziali aggiunte al linguaggio principale (piuttosto che alle biblioteche) che rimangono ancora lì oggi. Non è così carino. (Poke at reddit's / r / lolphp che prende in giro molte di queste incostanze ... lo sapevi che -1 monthsono sempre 30 giorni ?)

E mentre cose grandi e grandi sono state costruite in php (guarda wordpress come esempio), è ancora un mostro sotto le coperte con esoterica su come funzionano le cose (o non funzionano, o quali parti delle cose funzionano la maggior parte dei tempo).

È la lingua facile e veloce da imparare, quindi molte persone che non vogliono passare il tempo ad imparare una lingua la usano. E poi quando si rompe e devi mantenerlo ora? Bene, un linguaggio che consente tale mancanza di disciplina da parte dei programmatori che non sempre capiscono cosa stanno facendo crea alcuni bug molto "interessanti".

È la lingua dei siti Web rapidamente raggruppati e dei plugin wordpress per metà cotti. Dove circa 16 anni hanno scritto il codice per il loro vicino per $ 20 o uno studente universitario per soldi in birra ... sapendo che non lo rivedranno mai più. Vai a cercare un po 'il tag php di Stack Overflow e considera che potresti conservare quel codice un giorno.

Ricorda che il codice di tutti gli altri fa sempre schifo. E se devi gestire il codice di qualcun altro in php, fa schifo.


6
non c'è da meravigliarsi se le persone odiano php se prendono wordpress come esempio ... framework come Symfony o classi come Pimple sono meglio scritti script php puliti che mi piacerebbe mantenere. symfony.com/components pimple.sensiolabs.org
Félix Gagnon-Grenier

Ogni lingua contiene bug. PHP ha avuto un sacco di questi bug. Alcuni sono ordinati, alcuni sono così come sono, ma vengono create alternative. PHP si è evoluto nel tempo. MA il problema è la comunità. Ha una comunità piena di nobili e dilettanti. Il mio senior una volta ha detto "nessuno conosce php, anche se hanno 5 anni di esperienza". È vero che oltre la metà degli sviluppatori php non conosce il concetto di OOP. svolgono semplicemente il lavoro usando le funzioni di array e stringa copiate da StackOverflow.
tejas.jaiswal,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.