Pavan, sus comentarios, como la mayoría de PHP versus son siempre los mismos. Lo que es peor son los más de 53 votos positivos que recibiste por lo que son series de comentarios desinformados.
Ruby es una gran arquitectura. Sin embargo, decir que Laravel se basa en RoR dice algo sobre su experiencia de programación. Se basa en los principios MVC OOP y, por lo tanto, hay similitudes, como cualquier otro lenguaje OOP. En todo caso, Laravel es un derivado de C #. Una vez más, me encanta RoR, pero siempre encuentro que el RoR aboga por el RoR campeón basado en las características básicas de codificación que se pueden encontrar en cada lenguaje OOP. Comparar RoR con Laravel en controladores DB y gemas sería como comparar procesadores de texto en edición y formato de texto.
El argumento de que PHP no es OOP porque es un lenguaje de secuencias de comandos me duele el cerebro, de la misma manera que C # no es C, PHP hoy no es el PHP de ayer. PHP es mucho un lenguaje de programación OOP como cualquier otro. JavaScript es un lenguaje de script, por su lógica, ¿no es OOP? ¿Puede escribir código malo en PHP? Sí, ¿hay programadores malos? Sí, pero de la misma manera puede escribir código de bloque de procedimiento en C # o RoR. Cómo, por ejemplo, la herencia de C # funciona frente a PHP puede ser diferente, pero PHP es OOP, a menos que las clases, interfaces, mensajes de herencia, encapsulación, etc. sean de alguna manera más mágicos en RoR.
En cuanto a la base de datos, al igual que cualquier plataforma de desarrollo importante, Laravel admite todo lo que existe, ya que está basado en controladores. ¿Por qué un idioma principal hoy en día no es compatible con un documento DB como Mongo? La discusión en un marco Laravel, RoR o cualquier MVC sería la M en el MVC, qué y por qué en la interfaz del modelo que usted decida.
En términos de soporte, Laravel tiene soporte para decenas de miles de bibliotecas nativas de terceros y puede conectar casi cualquier biblioteca PHP. No sé sobre usted, pero el 90% de las bibliotecas que utilizo en todos los proyectos son más o menos las mismas en todos los idiomas, a menos que el desarrollador esté haciendo algo muy único, en cuyo caso podría haber una biblioteca de terceros que tome la decisión marco para eso. desarrollador, pero la cantidad no es un factor decisivo.
Testing, PHP Unit, CodeCeption, Behat, PHP Spec y la lista continúa para simulacro, unidad, integración, funcional, aceptación, etc., pruebas. A menos que exista alguna metodología de prueba mágica que exista en RoR, apuesto a que tiene los mismos pilares básicos de prueba que pruebas.
La programación limpia es el resultado de patrones limpios y el programador no el lenguaje: SÓLIDO, SECO, BESO. Ejemplo. se ven iguales.
// C #
public int AccountUser (usuario usuario) {
this.interface.account (user.GetId (), this.value)
}
// PHP – Laravel
Función pública AccountUser (Usuario $ usuario) {
$ this-> interface-> account ($ user-> getId (), $ this-> value);
}
Sin embargo, escribir la consulta a continuación en otro idioma sería doloroso. En mi opinión, Laravel es insuperable en simplicidad y poder de consulta:
$ posts = Post :: with (‘usuario’)
-> with (array (‘comentarios’ => función ($ consulta) {
$ query-> where (‘user_id’, ‘=’, 3);
$ consulta-> con (‘usuario’);
}))
-> con (‘etiquetas’)
-> where (‘locale_id’, ‘=’, $ locale-> id)
-> take ($ this-> numOfPostsInAreaPageLoad)
-> orderBy (‘created_at’, ‘DESC’)
-> get ();
En términos de escalabilidad, existen arquitecturas masivas que se ejecutan en derivados de PHP, incluido Facebook.
En términos de empleo, si usted es un gran programador, un apasionado de la tecnología, se enorgullece de escribir código limpio, es disciplinado sobre los patrones de mejores prácticas y puede producir código de calidad a tiempo. Sigue los principios de desarrollo de SOLID, DRY & KISS. Entonces siempre tendrá un trabajo, incluso si escribe en COBOL, bueno, tal vez no 🙂 los grandes atletas son excelentes porque entrenan 10 horas al día, no porque jueguen al baloncesto. Si su objetivo es hacer lo menos posible y ver dónde puede encontrar un trabajo basado en la cantidad, entonces diría que no se convierta en programador, ya que los 200 millones de cambios en la tecnología a diario lo harán muy infeliz .
Documentación: ¿ha estado en el marco PHP para artesanos web? Le desafío a encontrar un sitio de desarrollo mejor documentado y The Best Laravel y PHP Screencasts lo convertirán en un mejor programador incluso si tiene un título de CS de 3 años. También hay un millón y un sitio PHP de documentos y aprendizaje de calidad, tal como lo hay con RoR. La razón por la que Laravel tiene muchos seguidores es por su simplicidad y documentación. Si es así, di que no lo hace o que es malo, es porque no has mirado.
La red de si PHP vs RoR realmente depende de lo que intente construir. Si está tomando una decisión sobre Laravel vs RoR sobre los principios básicos de MVC y los controladores de la base de datos, elija cualquiera de ellos, ya que realmente no hace la diferencia. Si tiene una aplicación en mente, busque los elementos centrales e investigue esos, por ejemplo, si tiene una aplicación multicliente, ¿puede hacer un enlace para compartir el contexto de la aplicación? Si tiene una aplicación transaccional alta, pruebe la base de datos, por ejemplo, algo tan simple como el rendimiento de uuid puede ayudarlo a tomar la decisión. Tú entiendes.
En mi opinión, Laravel todos los días de la semana. Como puedo escribir una aplicación web MVC de calidad en la mitad del tiempo y eso significa más dinero.