Pregunta

Quiero usar un marco JavaScript con MVC para una aplicación web compleja (que será una de un conjunto de aplicaciones y páginas relacionadas) para una intranet en un archivo digital. He estado mirando SproutCore y JavaScriptMVC. Quiero elegir un marco y seguir con él.

¿Alguien sabe cuáles son las características distintivas al comparar estas dos?

Quiero algo que sea simple, directo que pueda personalizar/hackear fácilmente, y eso no se interpone demasiado en mi camino, pero al mismo tiempo me da una base para mantener mi código bien organizado y basado en eventos. También planeo usar jQuery sustancialmente.

Sé que SproutCore está respaldado por Apple, y parece que se está volviendo más popular día a día, y tiene un buen sitio web verde :), mientras que JavaScriptMVC parece menos profesional, con menos seguidores y menos impulso detrás de él.

He hecho los tutoriales para ambos y me impresionó Sproutcore More (en el tutorial de JMVC, realmente no haces nada sustancial), pero en algún lugar en el fondo de mi mente siento que JMVC podría ser mejor porque no lo hace ' Intenta hacer demasiado: solo te brinda una funcionalidad MVC basada en un par de complementos jQuery, y puedes usar jQuery para todo lo demás, por lo que es flexible. Mientras que SproutCore parece tener más de su propia API, etc., lo cual también es bueno en cierto modo ... pero luego estás un poco atrapado dentro de eso ... hmmm, estoy confundido :).

Cualquier pensamiento sería muy apreciado.

¿Fue útil?

Solución

Siendo un contribuyente de JavaScriptMVC, soy extremadamente parcial. Pero intentaré dar la mejor respuesta que pueda.

JavaScriptMVC también ha tardado años en desarrollarse. Pero en lugar de centrarse en la funcionalidad de la interfaz de usuario, se centró en las capas justo debajo de eso. Hay algunas razones para esto:

  1. Puede encontrar un widget jQuery para satisfacer casi todas las necesidades. No hay razón para competir estos complementos. En cambio, JavaScriptMVC intenta trabajar con ellos.
  2. La mayoría de las personas necesitan uno o dos widgets / controles personalizados. JavaScriptMVC quiere que construir y mantener estas piezas lo sea lo más fácil posible '.
  3. Flexibilidad+API. No estoy seguro de cómo decir esto ... pero aquí está mi mejor disparo ... con JavaScriptMVC, queríamos que cada capa de la aplicación fuera lo más fácil de entender y mantener. Es por eso que elegimos jQuery como nuestra biblioteca de bajo nivel. Su API es la mejor abstracción para el DOM posible. Las personas generalmente van directamente de la API de bajo nivel para construir el widget/control. Es por eso que el código de la mayoría de los widgets jQuery se ve muy diferente. Queríamos una capa media que organice nuestro código y promueva las mejores prácticas, al tiempo que proporcione suficiente flexibilidad para cumplir con casi cualquier requisito. Entonces, con JavaScriptMVC, obtienes capas muy sólidas de nivel bajo y medio. Pero no obtienes widgets.

JavaScriptMVC tiene pruebas, informes de errores y documentación horneados en el marco. La prueba es la parte más impresionante. Tiene pruebas integradas de selenio y envjs.

Mi recomendación sería ir con SproutCoreIF Sus requisitos se pueden construir bastante sencillo con SproutCore. Pero si conoce jQuery, tiene que construir muchos controles personalizados o necesita pruebas realmente impresionantes, use JavaScriptMVC.

Otros consejos

Es curioso, porque solo un mes hace más o menos, nuestro equipo evaluó exactamente estos 2 marcos de cara a cara. Terminamos eligiendo JavaScriptMVC, y he estado trabajando práctico durante aproximadamente un mes.

Me gusta ... pero, era un gran defensor de Sproutcore. Nunca había oído hablar de ninguno de los marco antes de evaluarlos, pero una vez que vi Sproutcore y miré debajo del capó, estaba muy, muy impresionado. Honestamente, no creo que haya nada por ahí que pueda darle el tipo de poder que da. Sí, tendrá una curva de aprendizaje, pero es el tipo de cosas que le permite a una persona realizar el trabajo de 5 o 10 una vez que lo conozca.

Así que usaría Sproutcore en un latido.

Dicho esto, JavaScriptMVC (también conocido como "JMVC") es bueno. Realmente no te da una tonelada encima de JQuery. Todavía tendrá algo de infraestructura para construir (dependiendo de cuán complicados sean sus requisitos). Esto es tanto un profesional como una estafa. Una buena cosa es que, si necesita profundizar en los detalles de alguna pieza de JMVC, puede ... no es tan increíblemente grande que sea impenetrable.

En resumen, no hay nada malo con JMVC. Pero, en mi opinión, no hay nada incluso en el estadio de béisbol con Sproutcore.

Creo que la principal diferencia entre ellos es que SproutCore incluye una GUI, mientras que el JMVC es algo de bajo nivel sin ningún gráfico, por lo que si necesita una GUI, no puede usar JMVC sin incluir otros scripts como la interfaz de usuario JQuery o JQuery.

Usted dijo que "JMVC podría ser mejor porque no intenta hacer demasiado" No estoy de acuerdo con esto, pasó años antes de que SproutCore 1.0 fuera lanzado, por lo que los desarrolladores tuvieron tiempo para hacer un gran producto.

Le sugiero que use SproutCore, tal vez tenga que aprender más cosas, pasará más tiempo para practicar y comprender todo, pero aprenderá cómo usar un marco muy bueno que pueda ser útil también para futuros proyectos.

Sproutcore-2.0 elimina las restricciones de interfaz de usuario y juega bien con App-Uus completamente personalizado.

http://blog.sproutcore.com/announcing-sproutcore-2-0/

http://blog.sproutcore.com/dispatches-from-the-eded-dropping-in-a-sproutcore-2-0-application/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top