Je suis vraiment déchiré entre deux piles différentes avec lesquelles créer une grande application. D'une part, il y a cette option:
Le chemin node.js me plaît parce que je peux écrire tout le code côté serveur, les vues et le code côté client en coffeescript, que je connais déjà. Si je descends sur cette route, je ne suis toujours pas sûr à 100% du chemin que je prendrais. mangouste rend le stockage des données rapide et facile, mais le manque de vraies relations pourrait être plus difficile à travailler étant donné le modèle de données que j'ai en tête (très SQLish).
Le chemin Play Framework est également attrayant parce que je connais bien le framework lorsque j'utilise Java, mais je ne connais pas grand-chose à Scala, donc il y aurait un impact sur la productivité alors que je travaille à l'apprentissage de ce langage. La couche d'accès à la base de données Anorm est attrayante car je peux écrire le SQL à la main que je préférerais et avoir les résultats mappés automatiquement aux objets, ce qui économise beaucoup d'efforts.
Je continue de pencher vers node.js, mais je ne suis pas vendu sur la meilleure couche d'accès db à utiliser. Quelqu'un a-t-il une expérience avec tout cela et peut-il partager ses idées?
La pile que vous choisissez doit dépendre des besoins de votre application. Regardons Play vs Node pour leurs points forts:
Node
Jouer!
Si votre application correspond plus étroitement à un modèle Web traditionnel, Play est probablement votre meilleur choix. Si vous avez besoin d'une rétroaction immédiate et d'une messagerie dynamique en temps réel, Node est le meilleur choix.
Pour les grandes applications traditionnelles, pensez sérieusement au jeu! Framework en raison de l'unité intégrée et des tests fonctionnels ainsi que des migrations de base de données. S'ils sont intégrés dans le processus de développement, ceux-ci vont un long chemin vers un produit final qui fonctionne comme prévu et qui est stable et sans erreur.
Il y a 10 grandes catégories à considérer lors de la comparaison des frameworks Web:
Consultez mon exposé Node.js vs Play Framework pour une ventilation détaillée de la façon dont ces deux cadres se comparent à travers ces 10 dimensions.