Acabei de começar a aprender Scala, e a primeira coisa que vou implementar é uma pequena aplicação web. Eu tenho usado Erlang no último ano para implementar software do servidor, mas nunca escrevi aplicativos da Web antes. Será uma ótima experiência.
Existem estruturas da web para o Scala, exceto para o Lift ?
Não me interpretem mal, o Lift parece incrível. Eu só quero saber quantas estruturas existem para que eu possa escolher entre elas. É sempre bom ter uma escolha, mas eu a única coisa que encontrei foi o Lift.
scala
frameworks
web-frameworks
lift
Prikrutil
fonte
fonte
Eu escrevi uma postagem no blog sobre isso.
Para resumir, algumas das opções são:
Eu finalmente descobri que nenhum era adequado para mim e desenvolvi minha própria "pequena estrutura". (Ainda não é de código aberto).
fonte
Eu gosto de Lift ;-)
O Play é minha segunda opção para estruturas da Web compatíveis com Scala.
Wicket é minha terceira escolha.
fonte
A seguir, é apresentado um despejo de estruturas. Isso não significa que eu realmente os usei:
Coeus . Uma estrutura da Web tradicional do MVC para Scala.
Não filtrado . Um kit de ferramentas para atender solicitações HTTP no Scala.
Granito Uniscala .
Gardel
Mondo
Amore . Uma porta Scala da estrutura da web Ruby Sinatra
Escala XML . Abordagem flexível para manipulação de XML e uma maneira simplificada de interagir com XML.
Cinto . Uma interface semelhante a rack para aplicativos da Web criados sobre o Scalaz-HTTP
Frank . Aplicação Web DSL construída sobre Scalaz / Belt
MixedBits . Uma estrutura para a linguagem de programação Scala para ajudar a criar sites
Circunflexo . Une vários projetos de código aberto independentes para desenvolvimento de aplicativos usando a linguagem de programação Scala.
Scala Webmachine . A webmachine de Port of Basho em Scala, um sistema baseado em REST para construção de aplicativos web
Jogador . Uma estrutura da Web Scala pronta para RESTful, multicanal
fonte
Experimente o Play Framework , que também oferece suporte ao Scala.
fonte
Um framework web muito interessante com implantação comercial é o Scalatra , inspirado no Ruby Sinatra. Aqui está um artigo da InfoQ sobre isso.
fonte
Acho o Unfiltered muito interessante https://github.com/unfiltered/unfiltered .
É mencionado na lista de IttayD.
Aqui está uma apresentação http://unfiltered.lessis.me/#0 e o vídeo http://code.technically.us/post/942531598/doug-tangren-presents-the-unfiltered-toolkit-for
Também aqui está um artigo com mais informações http://code.technically.us/post/998251172/holding-the-parameter
fonte
Deve-se notar que também há um interesse considerável em Wicket e Scala . O wicket se encaixa surpreendentemente bem em Scala. Se você quiser tirar proveito do projeto Wicket muito maduro e de seu ecossistema (extensões), além da sintaxe concisa e da vantagem de produtividade do Scala, este pode ser o seu caso!
Veja também:
Alguma prosa
Apresentação
Alguma experiência com Wicket e Scala
Anúncios com referência ao projeto do código de cola para vincular os fechamentos Scala aos modelos
fonte
Brincar é muito gentil.
Agora está pronto para produção. Ele incorpora: uma estrutura de modelo legal, recarga automática de arquivos de origem em segurança, um sistema de ação compostável, akka awesomeness, etc.
Sua parte da pilha Typesafe .
Depois de usá-lo em dois projetos, posso dizer que funciona muito bem e deve ser algo a ser considerado na próxima vez que você estiver procurando aprender novas estruturas da web.
fonte
Eu costumo usar JAX-RS usando Jersey (você pode escrever bons beans de recurso no Scala, Java ou Groovy) para escrever aplicativos da Web RESTul. Então eu uso Scalate para a prestação das vistas usando um dos vários idiomas modelo ( JADE , Scaml , Ssp (Páginas Scala Server), Bigode , etc.).
fonte
Há uma nova estrutura da web, chamada Scala Web Pages . Do site:
Público-alvo
A estrutura da Web Scala Pages provavelmente atrairá os programadores da Web que tenham experiência em Java e queiram programar aplicativos da Web no Scala. A ênfase está no POO, e não na programação funcional.
Características e recursos
$variable
e<?scp-instruction?>
fonte
Prikrutil, acho que estamos no mesmo barco. Eu também venho de Erlang para Scala. Eu gosto de nitrogênio muito de por isso decidi criar um framework Web Scala inspirado nele.
Dê uma olhada no Xitrum . Seu doc é bastante extenso. Do README:
O Xitrum é uma estrutura da Web Scala assíncrona e em cluster e um servidor da Web sobre Netty e Hazelcast:
Hazelcast também fornece:
Siga o tutorial para um início rápido.
fonte
Há também o Pinky, que costumava estar no bitbucket, mas foi transferido para o github .
A propósito, o github é um ótimo lugar para procurar projetos Scala, pois há muito a ser colocado lá.
fonte
Eu gostaria de adicionar meus próprios esforços a esta lista. Você pode encontrar mais informações aqui:
estrutura brzy
Está no início do desenvolvimento e ainda estou trabalhando agressivamente. Inclui recursos como:
Todo e qualquer feedback é muito apreciado.
UPDATE: 2011-09-078, acabei de publicar uma grande atualização para a versão 0.9.1. Há mais informações em http://brzy.org, que inclui um screencast.
fonte
Sweet e Slinky parecem não ser mantidos por cerca de um ano. O repositório do Sweet Maven sweetsoftwaredesign.com está morto, portanto não há como baixar dependências.
fonte
Nota: Spiffy está desatualizado.
< plug >
Spiffy :
O Spiffy é uma estrutura da Web que usa Scala, Akka (uma implementação de ator do Scala) e a API do Java Servlet 3.0. Ele faz uso da interface assíncrona e visa fornecer um ambiente massivamente paralelo e escalável para aplicativos da web. Os vários componentes do Spiffy são todos baseados na idéia de que eles precisam ser módulos minimalistas independentes que executam pequenas quantidades de trabalho muito rapidamente e enviam a solicitação para o próximo componente no pipeline. Após o processamento do último componente, o pedido sinaliza para o contêiner do servlet "completando" o pedido e enviando-o de volta ao cliente.
https://github.com/mardambey/spiffy
< / plug >
fonte
Você também pode tentar o Contexto . Ele foi projetado para ser uma estrutura Java, mas eu o usei com sucesso com o Scala também sem dificuldades. É uma estrutura baseada em componentes e possui propriedades semelhantes às do Lift ou Tapeçaria.
fonte
Eu me deparei com sua pergunta há algumas semanas, mas desde então também aprendi sobre o Circumflex . Essa é uma estrutura mínima e agradável, portanto, fácil de aprender, e também possui uma documentação muito boa.
Além de ser minimalista, ele também afirma funcionar bem com outras bibliotecas e permite que você use sua própria implementação de coisas quando precisar.
fonte