Hay muchas razones por las cuales las personas “odian” PHP, o al menos lo desprecian. Algunos de ellos son fundados, otros no, y algunos son circunstanciales.
1.) “Pajar / aguja inconsistente”
Se escucha a mucha gente golpeando sobre una aguja de pajar inconsistente, pero esto se puede leer con una sola regla:
- Cómo capturar una nube cúmulo real en el cielo e ingresar sus datos en el software 3D
- ¿Debo tomar un curso de Circuitos como estudiante de CS si aspiro a ser un científico de datos o un ingeniero de software integrado?
- ¿Cuáles son las cosas básicas necesarias para saber antes de comenzar el curso de ingeniería informática?
- ¿Cuáles son los mejores institutos para pruebas de software en Chandigarh?
- ¿Qué software existente se puede mejorar de manera significativa y cómo?
matriz: aguja, pajar
cuerda: pajar, aguja
Es tan simple como eso, pero la gente a menudo olvida y asume que es más complicado.
Referencia
2.) PHP es un archivo HTML, con lógica
PHP asume que el archivo será HTML primero, lo que puede conducir a algunos problemas estúpidos de salida donde el espacio en blanco se cuela antes o después de esas etiquetas . Hay algunos planes para cambiar eso, pero puede causar problemas y recuerda a todos que PHP tiene un historial de “creación de plantillas primero, programación posterior”.
Nuevo tipo de archivo para secuencias de comandos PHP de código puro: https://wiki.php.net/rfc/phpp
3.) Sin estándares
Hay un millón de marcos con un millón de estándares, las personas pelean por snake_case v camelCase y no tienen planes claros sobre lo que es correcto. Eso significa que las personas que vienen de Ruby a PHP (dicen que tienen que construir una biblioteca PHP para una API REST que acaban de construir) no tienen idea de qué hacer. He visto mucho este problema, pero PHP-FIG (anteriormente conocido como PHP Standards Group) está trabajando en eso.
PHP-FIG: https://github.com/php-fig/fig-s…
Grupo de Google: https://groups.google.com/group/…
4.) Falta de paquetes de calidad
NPM, Bundler / Gems, PIP, CPAN, etc., proporcionan paquetes de código de calidad para que los desarrolladores se conecten a su código, lo que significa que pueden escribir menos y hacer más. PHP no tiene un sistema de paquetes consistente que no sea PEAR, que es una bestia envejecida que la mayoría de las personas ignora debido a la baja calidad o vejez de los paquetes.
PSR-0 (parte de PHP-FIG) es un estándar que se ha generado para ayudar a que los paquetes de código trabajen juntos, y Composer es un proyecto que se ha creado para hacer el manejo de dependencias de estilo NPM para PHP. Con el tiempo veremos un aumento en la calidad, lo que significa que cada desarrollador reconstruirá mucho menos código incorrecto una y otra vez, y se puede ahorrar mucho más tiempo en lugar de que los desarrolladores trabajen en soluciones fragmentadas “específicas del marco”.
Paquetes: El camino a seguir para PHP: http://philsturgeon.co.uk/blog/2…
Compositor: http://getcomposer.org
5.) Concepto erróneo
Conozco a un grupo de desarrolladores de Ruby increíblemente inteligentes que solían usar PHP en los 4 días de PHP, y parecen pensar que nada ha cambiado. PHP 4 a 5 fue un salto masivo y PHP 5.2 a PHP 5.3 fue otro salto ENORME (después de todo, PHP 5.3 estaba destinado a ser PHP 6, pero trasportaron todas las características distintas de Unicode que no funcionaría).
El hecho de que anden diciéndoles a todos sus amigos de Ruby que PHP no tiene “método_perdido” (lo hacemos, se llama __call ()) y se quejan de otras cosas que ya no existen, o que han sido mejoradas o agregadas, eso significa mucho de las personas que se ríen de PHP se ríen de una versión de PHP de 7 años. Alguien dijo que PHP era terrible por no tener un servidor integrado como Ruby … bueno, sí.
Servidor web integrado en PHP: http://php.net/manual/en/feature…
6.) Lo estabas haciendo mal
“Puedes mezclar MySQL, HTML y PHP en los mismos archivos. ¡PHP es asqueroso!”
He dicho lo mismo sobre ColdFusion y cortésmente me explicó que lo estaba haciendo mal. Este es un buen punto. El hecho de que un idioma sea lo suficientemente flexible como para permitirte hacer lo que quieras no lo hace malo.
La estructura proviene de un marco. No conozco a muchas personas que usan Ruby que no usan Sinatra o Rails, y no conozco a muchos tipos de Nodo que no usan Express, CanJS, etc.
7.) Elitismo
No usar PHP es genial. ¿Quién quiere usar el mismo idioma que usó cuando comenzó a escribir código cuando era niño? ¿Quién quiere usar algo que tiene montones de niños de script terribles que lo usan? No debe ser un desafío, no es lo suficientemente inteligente para un programador inteligente como usted.
Necesitas algo que te desafíe y cualquiera que use PHP simplemente no es lo suficientemente inteligente como para aprender algo más …
Odio mucho ese punto de vista. En el ascensor de hoy, al entrar, mi colega escuchó una conversación de dos desconocidos: “No puedes confiar en estas tiendas PHP, ¿por qué no aprenden un idioma real?”. Esto cubre muchas de las opiniones de las personas que lo rodean, y si no es elitista, al menos es miope.
Entonces, ¿por qué la gente todavía usa PHP?
Si nada mas; Impulso
Las últimas estadísticas de W3Techs muestran que casi el 78% de los principales millones de sitios están construidos con PHP. Ahora, aunque puedes oler la calidad del lenguaje en sí, no puedes oler eso.
http://w3techs.com/technologies/…
Soy competente en PHP, Ruby, Python y he incursionado en NodeJS. ¿Por qué estoy usando PHP? Porque tiene el mercado más grande.
Muchos desarrolladores quieren perseguir “el lenguaje perfecto”, “el IDE perfecto”, “la plataforma de alojamiento perfecta”. La respuesta es que no hay una herramienta perfecta, solo opciones. Nadie debería estar “odiando” a ninguno de ellos.