PHP vs Node.js: Ambos lenguajes tienen sus propias ventajas y desventajas, sin embargo, aquí hay algunos puntos que puede considerar:
Donde gana PHP: código base profundo
La web está llena de código PHP. Las plataformas más populares para crear sitios web (WordPress, Drupal, Joomla) están escritas en PHP. Las plataformas no solo son de código abierto, sino también la mayoría de sus complementos. Hay código PHP en todas partes, y está esperando que descargue, modifique y use según sus necesidades.
- Para Socket.IO con Angular, ¿hay superposiciones con RabbitMQ?
- ¿Qué libro recomendará para los servicios web PHP5 como Youtube API, Facebook Graph API, Twitter, Google, etc.?
- Cómo construir un sitio web como Simply
- ¿Cuál es la mejor manera de solicitar una URL pero no seguir los redireccionamientos?
- ¿Qué herramientas necesito para construir un sitio web para un cliente?
Donde gana Node: el código más nuevo significa características más modernas
Claro, hay miles de excelentes archivos PHP de código abierto, pero algunos son complementos de WordPress de 8 años con la esperanza de que alguien los descargue. ¿Quién quiere pasar horas, días o semanas jugando con el código que no se ha actualizado en años? Los complementos de Node.js no solo son más nuevos, sino que se crearon con pleno conocimiento de los últimos enfoques arquitectónicos. Fueron creados por programadores que entienden que las aplicaciones web modernas deberían enviar la mayor parte de la inteligencia al cliente.
Donde gana PHP: simplicidad (más o menos)
PHP no tiene mucho: algunas variables y funciones básicas para hacer malabares con cadenas y números. Es una capa delgada que no hace mucho, excepto mover los datos del puerto 80 a la base de datos y viceversa. Eso es lo que se supone que debe hacer. Una base de datos moderna es una herramienta mágica, y tiene sentido dejar el trabajo pesado. PHP es la cantidad correcta de complejidad para un trabajo que no se supone que sea complejo.
Donde gana Node: Complejidad de cierres y más
JavaScript puede tener muchas pequeñas idiosincrasias que enloquecen, pero en su mayor parte es un lenguaje moderno que tiene una sintaxis moderna y algunas características útiles como los cierres. Puede reconfigurarlo y extenderlo fácilmente, haciendo posibles bibliotecas potentes como jQuery. Puede pasar funciones como objetos. ¿Por qué limitarse?
Donde gana PHP: el nuevo código lo ayuda a ponerse al día
Si eres un programador que quiere hacer más que interactuar con una base de datos y formatear los resultados, ahora puedes hacer más con PHP sin ocultarte. HHVM de Facebook agrega soporte para Hack, un lenguaje completo lleno de características modernas como anotaciones de tipo, genéricos y expresiones lambda. Usar esto limita su código a ejecutarse solo en el HHVM, pero eso no es lo peor del mundo. Es muy rápido.
Te puede gustar: ¿API de SMS usando PHP o Node.js?
Donde gana Node: docenas de opciones de idiomas
Si los usuarios de PHP están contentos de tener acceso a Hack, deberían considerar mudarse al mundo de Node.js porque muchos lenguajes principales pueden compilarse de manera cruzada para ejecutarse en JavaScript. Hay opciones bien conocidas como Java, C # o Lisp y docenas de otras como Scala, OCaml y Haskell. Incluso hay regalos para los amantes nostálgicos de BASIC o Pascal.
Donde gana PHP: no se necesita una aplicación cliente
Todo lo que se dice sobre el uso del mismo idioma en el navegador y en el servidor es bueno, pero ¿qué pasa si no necesita usar ningún idioma en el navegador? ¿Qué pasa si envía los datos en forma HTML? El navegador lo abre, y no hay dolores de cabeza o fallas causadas por fallas en los hilos de JavaScript que intentan crear una página en el navegador a partir de dos docenas de llamadas al servicio web. El HTML puro funciona con más frecuencia que cualquier otra cosa, y PHP está optimizado para crear eso. ¿Por qué molestarse con JavaScript en el navegador? Construya todo en el servidor y evite sobrecargar ese pequeño navegador en el pequeño teléfono.
Donde gana el nodo: las llamadas de servicio son más delgadas que las llamadas PHP con mucha grasa
Si bien las aplicaciones web HTML5 locas por AJAX pueden tener demasiadas partes móviles, son geniales y muy eficientes. Una vez que el código JavaScript está en la memoria caché del navegador, lo único que se mueve a lo largo de los cables son los nuevos datos. No hay un montón de marcado HTML, y no hay viajes repetidos para descargar toda la página. Solo los datos han cambiado. Si está dispuesto a dedicar tiempo para crear una aplicación web ingeniosa en el lado del navegador, hay una gran recompensa. Node.js está optimizado para entregar los datos y solo los datos a través de servicios web. Si su aplicación es compleja y rica en datos, es una buena base para una entrega eficiente.
Donde gana PHP: SQL
PHP fue construido para coexistir con MySQL y sus muchas variantes, como MariaDB. Si MySQL no es exactamente correcto, hay otras excelentes bases de datos SQL de Oracle y Microsoft. Su código puede cambiar con algunos cambios en sus consultas. El vasto mundo SQL no termina en sus fronteras. Algunos de los códigos más estables y bien desarrollados interactuarán con una base de datos SQL, lo que significa que toda esa potencia también se puede integrar fácilmente en un proyecto PHP. Puede que no sea una familia perfecta y feliz, pero es grande.
Donde gana Node.js: JSON
Si debe tener acceso a SQL, Node.js tiene bibliotecas para hacerlo. Pero Node.js también habla JSON, la lengua franca para interactuar con muchas de las últimas bases de datos NoSQL. Eso no quiere decir que no pueda obtener bibliotecas JSON para su pila PHP, pero hay algo fluido en la simplicidad de trabajar con JSON cuando se usa JavaScript. Es una sintaxis del navegador al servidor web a la base de datos. Los dos puntos y las llaves funcionan de la misma manera en todas partes. Eso solo te salvará de horas de frustración.
Donde gana PHP: velocidad de codificación
Para la mayoría de los desarrolladores, escribir PHP para aplicaciones web se siente más rápido: sin compiladores, sin implementación, sin archivos JAR o preprocesadores, simplemente su editor favorito y algunos archivos PHP en un directorio. Su kilometraje variará, pero cuando se trata de golpear un proyecto juntos rápidamente, PHP es una buena herramienta para usar.
Donde gana Node.js: velocidad bruta
Escribir código JavaScript es un poco más difícil cuando está contando llaves y paréntesis, pero cuando está hecho, su código Node.js puede volar. El mecanismo de devolución de llamada es brillante porque le ahorra hacer malabares con los hilos. El núcleo está bien construido y diseñado para hacer todo eso por usted.