Una razón importante es que muchos de los problemas que deben resolverse son fundamentalmente pequeños. Si la totalidad del trabajo real se puede hacer en una o dos pantallas de código, un lenguaje ideal es aquel que mantiene legible ese código central y le agrega muy poca información.
Prácticamente, una gran cantidad de trabajo se reduce a manejar algo de texto para producir más texto (y tal vez leer / escribir / actualizar una base de datos en alguna parte). Usando PHP y Java como ejemplos, hacer exactamente esas cosas es más fácil en PHP: sabe que normalmente desea imprimir en stdout, por lo que “imprimir” hace eso. Sabe que a menudo desea poner variables en el texto, por lo que es trivial (imprima “Hola, $ nombre”;). Sabe que a menudo necesita variables HTTP (GET, POST, cookies), por lo que es fácil acceder a ellas.
Java puede hacer todas esas cosas, pero está escrito para resolver un conjunto mucho más grande de problemas, por lo que no tiene una salida predeterminada (debe usar, por ejemplo, System.out.println), no tiene ninguna sintaxis especial para variables en cadenas (por lo que usaría String.format o un generador de cadenas), y obtener POST / GET / cookies depende completamente de la biblioteca / marco que esté utilizando.
- ¿Cuál es la diferencia entre AppDynamics y Application Insights para Azure WebApps?
- Estoy aprendiendo desarrollo front-end. ¿Cómo me posiciono en la capa de aplicación?
- ¿Qué tan relevante es CodeWars en el desarrollo web?
- ¿Existe un administrador / herramienta de marcadores que pueda almacenar contenido (páginas web, PDF, capturas de pantalla, etc.) en línea y permita anotaciones antes del almacenamiento (como lo hace Evernote con Clips), así como tener una función donde el contenido se archiva en una carpeta o etiquetado?
- ¿Dónde puedo obtener más información sobre la implementación del lanzamiento de la aplicación?
Hay una compensación de complejidad / flexibilidad entre ellos: PHP hace que las cosas simples sean fáciles y las cosas difíciles más difíciles. Java hace que las cosas simples sean onerosas, pero las cosas difíciles son posibles. Si realmente necesita la capacidad de reutilizar o reemplazar partes del proyecto, o si es lo suficientemente grande como para ser difícil de leer sin una estructuración reflexiva, o si necesita alguna de las muchas cosas útiles e intrincadas que existen en la biblioteca estándar de Java o como tercero, entonces Java es una opción mucho mejor.
Pero si está creando un formulario de registro de “quién viene a la fiesta de Navidad”, escribir e implementar la versión de PHP probablemente tomaría menos tiempo que configurar el marco web para la versión de Java, no importa realmente escribirlo.