Grails - Ascenseur: Quel cadre est mieux adapté à quel type d'applications? [fermé]

StackOverflow https://stackoverflow.com/questions/1097252

  •  11-09-2019
  •  | 
  •  

Question

J'utilise Grails depuis quelques mois et je l'aime vraiment, spécialement Gorm. Cependant, je suis Intéresser dans l'ascenseur de Scala. Par conséquent, je voudrais connaître votre opinion sur quel type d'applications web sont mieux adaptés pour lequel de ces deux cadres ou il est juste une question de goût, ce qui cadre à utiliser?

Enfin, qui de ces cadres ne vous sera le plus utilisé dans l'avenir? J'ai le sentiment que Grails est loin d'atteindre une masse critique et il reste encore très obscure (au cours des derniers mois que j'ai eu l'occasion de travailler avec des entreprises de taille moyenne et IT start-up travaillant principalement avec la pile de machine virtuelle Java et une seule personne connaissait et utilisé Grails) et je ne suis même pas sûr si elle peut devenir le « RoR » du monde Java (rapports en effet, une baisse de la croissance au cours des derniers mois, même si d'autres cadres ont un taux de croissance positif). Et j'aime Groovy, il est vraiment facile à apprendre, mais je l'ai remarqué à quel point il peut être lent pour certaines tâches.

D'autre part, Scala semble être plus populaire (TIOBE Index) et le fait que Twitter utilise lui a donné encore plus la présence dans la blogosphère avec beaucoup d'amateurs et ceux qui haïssent qui font le buzz. Il est célèbre pour être rapide et évolutive. Cependant, la langue semble un peu difficile à comprendre et à apprendre pour beaucoup de développeurs (alors peut-être il ne sera jamais obtenir le statut courant). Lift est peu connu et j'ai lu certains rapports qu'il est mieux adapté pour les petites applications (moins de 20 classes de domaine).

En voyant le nombre de livres publiés Groovy Grails dominent en ce moment, mais de nombreux éditeurs ont des livres Scala sur les œuvres, donc je pense que cet avantage ne durera pas longtemps.

Enfin, nous avons le problème que les deux langues et les cadres ont encore le manque de soutien des IDE (il est de mieux en mieux le jour, mais loin de ce que les magasins Java attendent d'être productifs).

Je ne veux pas commencer une guerre des flammes, mais je serais très intéressé d'entendre d'autres opinions des utilisateurs.

Était-ce utile?

La solution

Grails est une bonne idée (mais seulement « volé » des rails), mais le fait que les gars groovy ne sont pas intéressés à obtenir un soutien adéquat Eclipse entrave son succès beaucoup. J'ai même vu des questions Eclipse pas répondu à toutes les listes Grails.

Je suis d'accord avec Tim que Netbeans 6.7 offre enfin la première à mi-chemin utilisable ouvert support IDE Source Groovy / Grails - et éventuellement, SpringIDE présentera également une meilleure Groovy / Grails soutien

.

La raison pour laquelle beaucoup de gens aiment Java Java est le typage statique, ce qui permet des outils pour vous aider beaucoup avec beaucoup de choses. Ceci est perdu avec une langue groovy. Oui, je pourrais écrire chaque morceau très important du Code en Java et utiliser encore Grails - mais alors, pourquoi devrais-je, juste pour sauver un tas de lignes de code de la colle, faire au lieu d'apprendre à utiliser un framework Java très efficace

Pour arriver à une fin: je ne cherche pas encore à scala, mais construit quelques applications simples avec Grails - et je tendance à revenir à java, même réimplémentant toutes les applications qui a besoin de développement dans un cadre Java clair - je pense portillons ou Seam.

Je regarde aussi Scala / Lift, j'ai entendu beaucoup de bonnes choses à ce sujet!

BTW: Je compare les communautés et regarder les listes de diffusion - combien de peope sont là, obtiennent-ils de bonnes réponses sur leurs questions importantes

?

Grails semble avoir un taux de non-réponse de près de 50%, que je me sens est mauvais.

Autres conseils

La réponse acceptée prend ici une vue vraiment ignorant sur Groovy - c'est un langage moderne, dynamique (dynamique par rapport statique est un énorme débat en soi, et non ici particulièrement pertinent). Ceci est par la conception, et donc pas un inconvénient, juste une différence. Il a beaucoup de caractéristiques linguistiques modernes que Java ne dispose pas de telles que les fermetures, regexp native, itération polymorphes, une typage statique en option (question de débat, mais regardez aussi groovy ++), la syntaxe native pour les listes et les cartes, etc.- vous peut voir ici une comparaison http://groovy.codehaus.org/Differences+from+Java

Pour répondre à la question réelle de Grails vs Lift, je dirais que les mains vers le bas Grails. Il a le SpringSource derrière elle, et il suffit de regarder la page plugins http://www.grails.org/plugin/category/ tous - Je ne peux même pas trouver ce plug-ins ou équivalent sont disponibles pour Lift. Grails est également au-dessus des dernières technologies respectueuses du cloud, avec des fonctionnalités telles que le support de messagerie RabbitMQ natif, et le soutien de Gorm clé en main pour MongoDB et Redis.

Grails soutien NetBeans 6.7 est vraiment bon, ainsi que le soutien de IntelliJ idée à Maia.

Eclipse est encore assez sucky.

Je regardais un ascenseur, mais il était préoccupé par les ressources disponibles aujourd'hui; cela va changer dans l'avenir, mais mes projets ne peuvent pas attendre.

Je voudrais répondre spécifiquement à la question « pour quel type d'applications ». La principale différence entre les philosophies de Grails et Lift semble être que Grails applique MVC alors Lift semble être plus libérale à-dire qu'elle ne l'applique pas MVC, mais fournit des pistes assez pour utiliser MVC si vous voulez.

Aussi Lift semble être excellent pour « Applications » une seule page, en particulier si vous avez besoin d'implémenter une fonctionnalité serveur poussée en utilisant la technologie comme la comète (ce qui ne signifie évidemment pas qu'il est pas bon pour d'autres types d'applications). D'autre part, Grails semble être mieux pour les applications « Enterprisy », surtout si vous êtes déjà familier avec Spring et Hibernate, mais voulez que votre application soit beaucoup plus concise (en utilisant la convention sur la configuration) que ce que une application non-Grails serait être l'utilisation de ces technologies.


Références:

  1. simplement ascenseur, chapitre 13
  2. application unique

Disclaimer: Je viens de commencer à explorer Ascenseur et construit quelques applications simples à l'aide Grails.

Avec toutes les améliorations de performance et les progrès de Grails2.0, avec un grand soutien fourni par IntelliJ 11 pour le cadre, d'une capacité de plug-in à peu près toute technologie web avancée dans votre application Grails, et oui -. Poids VMware derrière - Je ne vois vraiment pas comment ascenseur pourrait être un avantage ou un bon choix. Il suffit de penser à utiliser deux langues différentes dans la même application, la nécessité de double compétence dans l'équipe, etc.

La question initiale a été affichée comme il y a et je pense que 2 ans et plus le temps a montré de quel côté est le choix de la communauté dev;)

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