javascript - librerias - ¿Por qué necesitaría Angular si uso Meteor?
librerias javascript html5 (6)
Angular es más ampliamente utilizado y es muy popular debido a su simplicidad y completitud. Es simple debido a su tamaño y completo, ya que tiene todos los componentes, incluidas las plantillas, el enlace de datos, etc.
Aunque realmente me gusta y admiro Meteor, no estoy seguro si está listo para el horario estelar. Muchos conceptos en Meteor no se han puesto a tono en aplicaciones de producción real. Por ejemplo, tener mongoDB lite en el lado del cliente puede ser una gran ventaja y también puede ser un gran negativo.
Elegiría Angular en función de su preparación, simplicidad e integridad. Meteor merece una evaluación real cuando está listo para el horario estelar.
Angular es realmente útil para compilar aplicaciones de una sola página. Básicamente se basa en el paradigma actual donde hacemos solicitudes a diferentes puntos finales para ayudarnos a crear mejores aplicaciones de una sola página.
Por otro lado, tenemos Meteor que parece incluso más capaz, especialmente porque tienen una característica llamada DDP que básicamente permite la transmisión bidireccional de datos. Parece que Meteor es un superconjunto de Angular y es la mejor opción obvia.
Si bien Angular ofrece algunas cosas interesantes como pruebas y localización, simplemente no veo por qué debería usar Angular con Meteor en lugar de simplemente usar Meteor. ¿Podría alguien explicar por qué querría utilizar Angular con Meteor o incluso usar cualquier framework de front-end MV * si tuviera que usar Meteor?
AngularJS ahora cuenta con el soporte oficial de v1.2 de Meteor y usarlos juntos es la solución más poderosa que conozco hoy en día. http://angular-meteor.com
Como los campos Meteor y AngularJS se superponen en la parte de la vista , la verdadera pregunta es: ¿cuáles son los beneficios de utilizar AngularJS como motor tentador en lugar de Blaze?
- AngularJS generalmente requiere menos código para lograr el mismo resultado (enlaces más fáciles y rápidos, menos código de pegamento, incluso si el resplandor es bueno para ello)
- AngularJS proporciona una forma conveniente de estructurar su código con módulos que actúan como importación local o espacio de nombres. Esto aún "falta" incluso con el soporte ECMA2015 en la v1.2, pero esperemos que pronto se cubra .
- AngularJS 2.0 será / es faster que Blaze, pero para cargar la lib
- Hay muchas templates , bibliotecas y otros marcos basados en AngularJS, mucho más que Blaze.
Hay ligeras diferencias en los dos. El trabajo más evidente para el día a día sería el enlace.
En Meteor es un poco como tener Angular pero sin este enlace, ya que tienes que hacerlo manualmente. Si usa angular puede enlazar a su html automáticamente, entonces Meteor puede dar un paso más y enviarlo al servidor y a todos los demás.
Meteor tiene pruebas también, pero no es oficial. Debería instalar paquetes fuera de atmosphere.meteor.com para usar esta funcionalidad adicional. También hay muchas otras cosas allí.
Una cosa a tener en cuenta es que Meteor tiene un nuevo motor de Templating en las obras llamado Meteor-UI que aborda muchas de las preocupaciones que la implementación actual que angular tiene una ventaja. El principal sería el aislamiento DOM. Más detalles aquí: https://github.com/meteor/meteor/wiki/New-Template-Engine-Preview - https://github.com/meteor/meteor/wiki/New-Template-Engine-Preview
El nuevo motor de plantillas Meteor-UI en realidad va un paso más allá de angular ya que se introduce un nuevo concepto de ''controles''. Esto significa que puede agregar un cuadro de texto con un código similar a un manubrio y hacer que se vincule automáticamente a los eventos y al back-end, con validación.
Con la localización hay un paquete en la atmósfera que ayuda un poco con eso. Puede usar marcadores de posición de manillar y reemplazarlos según el idioma que pretenda mostrar.
También depende de tu preferencia, si te sientes cómodo con el uso de Angular, puede crear hermosas aplicaciones que parecen muy nativas. Meteor también lo hace de una manera diferente, por el momento requiere un poco más de trabajo debido a la unión, pero cambiaría en el próximo mes o dos debido a Meteor-UI.
La mayoría de las aplicaciones actuales de nuestro equipo están compiladas con la combinación de ambos marcos.
No voy a explicar las razones por las que usamos Meteor porque esa no era tu pregunta (aunque me encanta hablar sobre lo genial Meteor en cada oportunidad que tengo) así que solo hablaré sobre Angular:
- Enfoque declarativo : AngularJS es el líder en el enfoque declarativo de los marcos de JavaScript. como estamos trabajando de cerca con muchos diseñadores, podemos ver lo fácil que es para ellos entender el código. también es mucho más fácil conseguir nuevos programadores en nuestro equipo con AngularJS.
- Ecosistema enorme y grandioso: el ecosistema de Angular es increíble. tienes angular-x para todo. es una pena no usar eso.
- Ahora es más fácil combinarlos . Estoy obviamente parcial, pero nuestro equipo escribió y mantuvo esta biblioteca. angular-meteor . También hemos lanzado un tutorial para combinar los dos. Tutorial de meteoros angulares.
Por cierto, la respuesta correcta actual está desactualizada. El nuevo motor de plantillas de Meteor (Blaze) está fuera y es genial ...
Recientemente escribimos un artículo sobre Meteor vs Angular . Creo que Angular puede funcionar como un cumplido para Meteor en este momento, pero Meteor continuará avanzando en el mismo conjunto de características de Front-End como Angular todos los días.
También diría que soy un poco parcial en el lado de las pruebas, ya que estoy escribiendo el libro Testing Meteor. Hay una nueva iniciativa que ha comenzado llamada Velocity, que estandarizará mucho más la escena de prueba de Meteor.
Todo depende de ti. Si tiene antecedentes angulares, es más fácil usarlo para su próximo proyecto. Meteor es un framework completo con una herramienta de línea de comandos y un servidor web incorporado que se puede usar tanto en el cliente como en el servidor para realizar aplicaciones en tiempo real. Entonces no necesitas usar angular si estás usando Meteor. Si quiere leer más sobre Angular y Meteor, lea DESDE EL LADO DEL CLIENTE AL METEORO DEL SERVIDOR