Aqui hay una traduccion del articulo citado en mensaje anterior que habla de muchas contras de php, sin embargo, varias de estas criticas provienen de alguien que no ha comprendido (o lo ha hecho y no le ha gustado) la filosofia de php, otras en cambio, son criticas solidas y bien fundadas que son muy razonables.
Como @triby menciona, ambos lenguajes apuntan a publicos diferentes e intentan satisfacer necesidades diferentes, en java, por ejemplo, un patron de diseño clave es el MVC (modelo-vista-controlador) un patron propio de sistemas con la arquitectura de java, ¡pero la web no es MVC! la web tiene la estructura Request/Response por lo que no tiene sentido hablar de MVC en la web.
No me gustan los FW, y menos los grandes, pero citare a fabien potencier, autor de Symfony2 en
este articulo:
Cita: I don't like MVC because that's not how the web works. Symfony2 is an HTTP framework; it is a Request/Response framework. That's the big deal. The fundamental principles of Symfony2 are centered around the HTTP specification.
I don't like MVC because the web has evolved a lot in the recent years and some projects are much different than projects we had some years ago. Sometimes, you just need a way to create a REST API. Sometimes, the logic is mostly in the browser and the server is just used to serve data (think backbone.js for instance). And for these projects, you don't need an MVC framework. You need something that handles a Request and returns a Response. You need a framework that implements the HTTP specification. HTTP streaming is yet another example that does not fit well with the MVC pattern.
Lo que cambia entre ambos programadores es la mentalidad, un programador java tiene por ley que saber MVC, tiene que saber aplicarlo y debe intentar convertirlo en su filosofia de trabajo, un programador php puede pasar toda su vida sin saber que existe ese patron de diseño y no se perderá gran cosa.
Ahi surge la disputa absurda entre los programadores de ambos bandos de querer ver que lenguaje "la tiene mas larga" (a la linea de codigo me refiero
) un programador java que intenta hacer algo en php, intentara aplicar MVC, para eso, a php le faltan muchas características que abundan en java que hace que el programador java se sienta frustrado al no poder aplicar su estructura de siempre y no solo tener que aprender otro lenguaje sino tambien otro paradigma de programacion, idem cuando un programador php quiere usar java, tiene que cambiar su paradigma completamente. Ambos creen que su plataforma es mejor, se ponen la camiseta del lenguaje y se discute absurdamente cuando ambos son para cosas bien distintas y no hay puntos comunes para compararlos.
¿O me vas a decir que un lenguaje pre-compilado, con tipado estatico donde hasta los tipos de datos nativos se implementan con objetos, puede comparar su soporte de POO con un lenguaje de scripting interpretado, no-tipado que nacio y tubo durante mucho tiempo solo enfoque procedural?
Comparemos mejor JSP (java server page) contra PHP, ahi se ve claramente la superioridad de PHP, mas comunidad, mas eficiencia, mayor facilidad, mas frameworks, mas extenciones, mas sistemas libres, etc, etc.
Sin embargo un programador java seguira encontrando mas comodo JSP que a PHP.
Si quieres comparar a java con algo comparalo contra Ruby no contra PHP.
Cita: No he visto nada así en PHP, aunque posiblemente no he buscado lo suficiente.
Existe
Hip-Hop una maquina virtual desarrollada por Facebook que permite usar php con las mismas caracteristicas que una aplicacion java, compilando a bytecode, etc.
Cita: ¿Entonces para que se usa Java o .NET? Son demasiado para un blog, una red social o un portal de ventas, normalmente se usan en infraestructuras mas grandes donde posiblemente se comunican con ERP's mas complejos, inclusive con sistemas 'legacy', que de otra forma sería demasiado complejo 'escalar' con PHP (sino es que casi imposible).
Facebook se topo con este problema justamente, y al estar escrito enteramente en php, en vez de migrar a otro lenguaje creo la VM mencionada anteriormente y resolvio el problema de escalabilidad de php. No hay excusas tecnicas (teoricas) para usar otro lenguaje en la web incluso en proyectos gigantescos como Fb, lo que si hay, es muchos sistemas ya desarrollados en otras plataformas con los que hay que interactuar y a veces es mas facil (y razonable) migrar de lenguaje que hacer la adaptacion.
Cita: aunque no se que tan serio sea este portal, por eso te pregunto que tan fiable es este portal
Es tan fiable como cualquier otro, no tienes que confiar en la palabra de una persona que se "esconde" tras un nick que ni siquiera revela su nombre real, debes ver lo que cada uno dice y sacar tu mismo las conclusiones de si tiene sentido o no, de la misma manera que no debes tomar como verdad absoluta la palabra de tu profesor, el posiblemente sea un persona que sabe de lo que habla pero lo hace en base a su experiencia personal y a su gusto, tomalo como referencia y saca tus conclusiones, forma tu propia opinion, por favor trata de no se de esos que leen y repiten por todos lados lo mismo, es mejor equivocarse en un razonamiento propio, que repetir un razonamiento equivocado