Question

Je viens de commencer l'apprentissage Scala, et la première chose que je vais mettre en œuvre est une application web minuscule. Je me sers Erlang pour l'année dernière pour mettre en œuvre le logiciel côté serveur, mais je ne l'ai jamais écrit des applications web avant. Ce sera une grande expérience.

Y at-il des cadres web pour Scala sauf pour Lift ?

Ne vous méprenez pas, Lift a l'air génial. Je veux juste savoir combien de cadres il y a tellement que je peux alors choisir entre les deux. Il est toujours bon d'avoir un choix, mais je la seule chose que j'ai trouvé Ascenseur.

Était-ce utile?

La solution

Je suis très intéressé par Scala, mais je ne l'ai pas utilisé encore, donc avec cette mise en garde, les cadres, je suis conscient de qui ne sont pas mentionnés dans réponse de HRJ (Lift, Sweet, Slinky) sont:

Autres conseils

J'ai écrit un à ce sujet.

Pour résumer, certaines options sont:

  1. Lift
  2. douce
  3. Slinky

J'ai finalement trouvé que personne ne convenaient pour moi, et développé mon propre petit « cadre ». (Il est pas encore open source).

J'aime Lift; -)

Le jeu est mon deuxième choix pour les frameworks web Scala-friendly.

Wicket est mon troisième choix.

Voici une décharge de cadres. Cela ne signifie pas que je les ai utilisés réellement:

  • Coeus . Un framework web classique MVC pour Scala.

  • Unfiltered. Une boîte à outils pour l'entretien des requêtes HTTP à Scala.

  • Uniscala Granite .

  • Gardel

  • Mondo

  • Amore . Un port Scala du framework web Ruby Sinatra

  • Scales XML . Une approche flexible à la manipulation XML et une façon simplifiée d'interagir avec XML.

  • ceinture. Une interface de type rack pour les applications web construit sur Scalaz-HTTP

  • Frank . application Web DSL construit sur Scalaz / Ceinture

  • MixedBits . Un cadre pour la langue Progamming Scala pour aider à construire des sites Web

  • circonflexe . Regroupe plusieurs projets open source autonomes pour le développement d'applications utilisant le langage de programmation Scala.

  • Scala Webmachine . Port de webmachine de Basho à Scala, un système REST pour la création d'applications web

  • Bowler . Un RESTful, prêt à canaux multiples framework web Scala

Essayez cadre de lecture , qui soutiennent également Scala.

Un framework web très intéressant avec le déploiement commercial est Scalatra , inspiré par Sinatra Ruby. Voici un InfoQ article à ce sujet.

Je trouve très intéressant https://github.com/unfiltered/unfiltered .

Il est mentionné dans la liste des IttayD.

Voici une présentation à ce sujet http://unfiltered.lessis.me/#0 et la http: //code.technically. nous / post / 942531598 / doug-Tangren-présente-la boîte à outils-- non filtrée-

Ici aussi il y a un article avec plus d'infos http: //code.technically .us / post / 998251172 / de maintien du paramètre

Il faut noter qu'il ya aussi un intérêt considérable dans Wicket et Scala . Wicket Scala convient bien suprisingly. Si vous voulez profiter du projet Wicket très mature et son écosystème (extensions) plus la syntaxe concise et l'avantage de la productivité de la Scala, celui-ci peut être pour vous!

Voir aussi:

  1. Certains prosa

  2. Présentation

  3. Une certaine expérience avec Wicket et Scala

  4. announcments en référence au projet le code de colle pour lier Scala fermetures aux modèles

jouer est assez doux.

Il est maintenant prêt pour la production. Il intègre:. Un cadre de modèle cool, le rechargement automatique des fichiers source sur la sécurité, un système d'action composable AKKA awesomeness, etc

Sa partie du Typesafe Stack .

Après avoir utilisé pour deux projets, je peux dire que cela fonctionne assez bien et il devrait être quelque chose à envisager la prochaine fois que vous cherchez à apprendre de nouveaux cadres web.

J'ai tendance à utiliser JAX-RS en utilisant Jersey (vous pouvez écrire de belles fèves de ressources à Scala, Java ou Groovy) pour écrire RESTul applications web. Puis-je utiliser Scalate pour le rendu des vues à l'aide d'une des différentes langues de modèle ( JADE , Scaml , Ssp (Scala serveur Pages), Mustache , etc.).

Il y a un nouveau framework web, appelé Scala Pages Web . Sur le site:

Public cible

Le cadre Web Scala Pages est susceptible de faire appel à des programmeurs web qui viennent d'un milieu Java et que vous souhaitez réaliser des applications web à Scala. L'accent est mis sur la POO plutôt que la programmation fonctionnelle.

Caractéristiques et

  • Adhère au paradigme modèle-vue-contrôleur
  • moteur de modèle à base de texte
  • syntaxe simple: $variable et <?scp-instruction?>
  • Détection d'encodage / contenu, capable de gérer les encodages texte internationaux
  • Snippets au lieu de balises personnalisées
  • URL Rewriting

Prikrutil, je pense que nous sommes sur le même bateau. Je viens aussi Scala de Erlang. J'aime azote beaucoup donc j'ai décidé de créer un cadre Web Scala inspiré.

Jetez un oeil à Xitrum . Son doc est assez vaste. De README:

Xitrum est un async et le clustering framework web Scala et le serveur Web sur le dessus de Netty et Hazelcast:

  • Il comble l'écart entre Scalatra et Lift: plus puissant que Scalatra et plus facile à utiliser que Lift. Vous pouvez facilement créer à la fois des API RESTful et postbacks. Xitrum est contrôleur d'abord comme Scalatra, pas voir d'abord comme-Lift.
  • Annotation est utilisé pour les routes d'URL, dans l'esprit de JAX-RS. Vous ne devez pas déclarer tous les itinéraires en un seul endroit.
  • Typesafe, dans l'esprit de Scala.
  • Async, dans l'esprit de Netty.
  • Les sessions peuvent être stockées dans les cookies ou Hazelcast regroupés.
  • jQuery Validation est intégré pour le côté du navigateur et de validation côté serveur. i18n utilisant GNU gettext, ce qui signifie que contrairement à d'autres solutions, à la fois singulier et pluriel formes sont pris en charge.
  • GET conditionnel à l'aide ETag.

Hazelcast donne également:

  • en cours et cache en cluster, vous n'avez pas besoin de serveurs de cache séparés.
  • vous pouvez l'échelle Comet à plusieurs serveurs Web en cours et de cluster Comet,.

Suivez le tutoriel pour un démarrage rapide.

Il y a aussi Pinky, qui avait l'habitude d'être sur bitbucket mais se est transféré à github .

Par ailleurs, GitHub est un excellent endroit pour rechercher des projets Scala, car il y a beaucoup d'être mis là.

Je voudrais ajouter mes propres efforts à cette liste. Vous pouvez en savoir plus d'informations ici:

brzy cadre

Il est au début du développement et je travaille toujours de manière agressive. Il inclut des fonctionnalités comme:

  • Un accent sur la simplicité et l'extensibilité.
  • Outil de construction intégré.
  • Conception modulaire; certains modules initiaux inclut le support pour Scalate, email, jms, JPA, squeryl, cassandra, services Cron et plus encore.
  • simples contrôleurs RESTful et actions.

Tout et tous les commentaires est très apprécié.

MISE À JOUR: 2011-09-078, je viens posté une mise à jour majeure à la version 0.9.1. Il y a plus d'infos sur http://brzy.org qui comprend un screencast.

Les deux doux et Slinky semblent être unmaintanted pendant environ un an. Doux sweetsoftwaredesign.com repo Maven est mort donc il n'y a même pas moyen de télécharger les dépendances.

Remarque:. Spiffy est pas à jour

<< em> Plug >

Spiffy :

  • est écrit en Scala
  • utilise la bibliothèque fantastique et acteurs Akka à l'échelle
  • utilise pour le traitement des requêtes asynchrones API Servlet 3.0
  • est modulaire (remplacement de composants est simple)
  • utilise DSLs pour réduire le code où vous ne voulez pas
  • soutient Scalate et Freemarker pour Templating

Spiffy est un framework web en utilisant Scala, Akka (une mise en œuvre de l'acteur Scala), et l'API Java Servlet 3.0. Il utilise l'interface async et vise à fournir un environnement massivement parallèle et évolutive pour les applications web. divers composants de Spiffy sont tous basés sur l'idée qu'ils doivent être des modules indépendants minimalistes très rapidement et la main font de petites quantités de travail hors de la demande à la composante suivante dans le pipeline. Après le dernier composant est effectué le traitement de la demande, il signale le conteneur de servlet par « remplir » la demande et l'envoyer au client.

https://github.com/mardambey/spiffy

<< em> / Plug >

Vous pouvez également essayer contexte . Il a été conçu pour être un Java-cadre, mais je l'ai utilisé avec succès avec Scala aussi sans difficultés. Il est un cadre à base de composants et possède des propriétés similaires à Lift ou tapisserie.

Je suis tombé sur votre question quelques semaines, mais depuis aussi appris sur circonflexe . C'est un joli cadre minimal qui est donc facile à apprendre, et il a très bonne documentation disponible.

A côté de c'est-ness minime, elle prétend aussi bien travailler avec d'autres bibliothèques et vous permet d'utiliser votre propre implémentation de choses quand vous en avez besoin.

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