Question

Je veux utiliser un cadre javascript avec MVC pour une application web complexe (qui sera l'un d'un ensemble d'applications et de pages connexes) pour un intranet dans un service d'archives numériques. J'ai cherché à SproutCore et JavascriptMVC. Je veux choisir un cadre et de s'y tenir.

Quelqu'un sait-il ce que les traits distinctifs sont lorsque l'on compare ces deux?

Je veux quelque chose qui est simple et direct que je peux personnaliser / pirater facilement, et qui ne se trouve pas dans mon chemin trop, mais en même temps me donne une base pour garder mon code bien organisé, et l'événement -Driven. Je prévois aussi sur l'utilisation de jquery considérablement.

Je sais que SproutCore est soutenu par Apple, et il semblerait qu'il devient plus populaire par le jour, et il a un beau site :) vert, alors que JavascriptMVC semble moins professionnel, avec moins d'un élan qui suit et moins derrière elle.

Je l'ai fait les tutoriels pour les deux et j'ai été impressionné par SproutCore plus (dans le JMVC tutoriel vous ne faites pas vraiment quelque chose de substantiel) - mais quelque part dans le dos de mon esprit je pense que JMVC pourrait juste être mieux parce que il ne cherche pas et en faire trop - il vous donne juste la fonctionnalité MVC basée sur un couple de plugins jquery, et vous pouvez utiliser jquery pour tout le reste, il est donc flexible. Alors que SproutCore semble avoir plus de sa propre API, etc ... qui est aussi agréable d'une manière ... mais vous êtes un peu coincé dans ce .... hmmm Je suis confus.)

Toute pensée serait très apprécié.

Était-ce utile?

La solution

Être un contributeur JavaScriptMVC, je suis extrêmement biaisé. Mais je vais essayer de donner la meilleure réponse possible.

JavaScriptMVC a également pris des années à se développer. Mais au lieu de se concentrer sur la fonctionnalité ui, il est concentré sur les couches juste en dessous. Il y a quelques raisons à cela:

  1. Vous pouvez trouver un jQuery widget pour répondre à presque tous les besoins. Il n'y a pas de raison de concurrencer ces plug-ins. Au lieu de cela, JavaScriptMVC essaie de travailler avec eux.
  2. La plupart des gens ont besoin d'un ou deux widgets personnalisés / contrôles. JavaScriptMVC veut faire construire et de maintenir ces pièces aussi facile que possible.
  3. API Flexibilité +. Je ne sais pas exactement comment dire celui-ci ... mais voici mon meilleur coup ... Avec JavaScriptMVC, nous voulions toutes les couches de l'application soit aussi facile à comprendre et à maintenir que possible. Voilà pourquoi nous avons choisi jQuery notre bibliothèque de bas niveau. Il API est sur la meilleure abstraction pour le dom possible. Les gens vont généralement directement à partir de l'API de bas niveau pour construire le Widget / contrôle. Voilà pourquoi le regard du code de la plupart des widgets de jQuery très dissemblables. Nous voulions une couche intermédiaire qui organisent notre code et promouvoir les meilleures pratiques, tout en offrant suffisamment de flexibilité pour répondre à presque toutes les exigences. Donc, avec JavaScriptMVC, vous obtenez bas et des couches de niveau moyen très solide. Mais, vous ne recevez pas des widgets.

JavaScriptMVC a test, les rapports d'erreurs et de la documentation dans le cadre cuit au four. Le test est la plupart impressionnante. Il a intégré le sélénium et envjs test.

Ma recommandation serait d'aller avec SproutCoreif vos besoins peuvent être construites assez simple avec SproutCore. Mais si vous savez jQuery, doivent construire beaucoup de contrôles personnalisés, ou besoin vraiment impressionnant test, utilisez JavaScriptMVC.

Autres conseils

drôle, parce que juste un dos de mois ou, notre équipe a évalué exactement ces 2 cadres tête à tête. Nous avons fini par choisir JavaScriptMVC, et que je suis pratique à travailler avec elle pendant environ un mois.

Je l'aime ... mais, je suis un partisan énorme de SproutCore. Je ne l'avais jamais entendu parler de l'un cadre avant de les eval'd, mais une fois que j'ai vu SproutCore et regardé sous le capot, j'étais très, très impressionné. Honnêtement, je ne pense pas qu'il y ait quoi que ce soit là-bas qui peut vous donner le genre de la puissance qu'il donne. Oui, vous aurez une courbe d'apprentissage, mais il est le genre de chose qui permet à une personne d'accomplir le travail de 5 ou 10 une fois que vous le savez.

Alors j'utiliser SproutCore dans un battement de coeur.

Cela étant dit, JavascriptMVC (alias "JMVC") est agréable. Il ne vous donne pas vraiment une tonne sur le dessus de jQuery lui-même. Vous aurez toujours une infrastructure pour construire vous-même (selon la complexité de vos besoins sont). C'est à la fois un pro et un con. Une belle chose à ce sujet est que, si vous avez besoin de creuser dans les détails de quelque morceau de JMVC, vous pouvez ... il est pas si incroyablement énorme qu'il est impénétrable.

En résumé, il n'y a pas une mauvaise chose avec JMVC. Mais il y a, à mon avis, rien même dans le stade de baseball avec SproutCore.

Je pense que la principale différence entre eux est que SproutCore comprend une interface graphique alors que le JMVC est quelque chose de bas niveau sans graphique, donc si vous avez besoin d'une interface graphique, vous ne pouvez pas utiliser JMVC sans inclure d'autres scripts comme l'interface utilisateur jQuery ou plugins jQuery.

Vous avez dit que « JMVC pourrait juste être meilleur parce qu'il ne cherche pas et ne trop » je ne suis pas d'accord avec cela, il a fallu des années avant SproutCore 1.0 a été libéré, afin que les développeurs ont eu le temps de faire un excellent produit .

Je vous suggère d'utiliser SproutCore, peut-être que vous aurez à apprendre plus de choses, vous passerez plus de temps à la pratique et tout comprendre, mais vous allez apprendre à utiliser un très bon cadre qui peut être utile aussi pour les projets futurs.

SproutCore-2.0 permet d'éliminer les contraintes ui-et joue bien avec complètement sur mesure app-uis.

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

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top