Estou pensando em usar o Grails para um novo site, mas estou aberto a outras / novas linguagens de programação e estruturas. Eu desenvolvi usando J2EE / JSF2, ASP.NET e PHP. O Grails ou Ruby on Rails é a melhor maneira de colocar a funcionalidade em funcionamento rapidamente?
Alguns pensamentos iniciais:
- O DJango é semelhante ao RoR / Grails e eu consideraria
- O GWT é um conceito interessante, mas não parece que o tempo de resposta seja tão rápido
Obrigado, -Jon
programming-languages
frameworks
web-framework
Jon Onstott
fonte
fonte
Respostas:
Como em todas as perguntas desse tipo, a resposta é "depende". Os fatores a serem considerados incluem como você se sente confortável com a linguagem / estrutura e quais recursos o projeto requer. Dito isto, criei sites usando várias estruturas, cada uma com suas próprias forças e fraquezas:
Grails
Se eu precisar criar um site rapidamente para qualquer profissional , Grails provavelmente seria minha primeira escolha. O GORM é de longe o ORM mais simples e intuitivo que eu tentei, o paradigma MVC é muito bem executado, há 0 configurações para iniciar a codificação (não se preocupe com URLs, patches de banco de dados, nada), iteração muito rápida (apenas atualize a página), integração perfeita de Java (uma coisa boa no mundo dos negócios) e alguns plugins maravilhosos (por exemplo, Pesquisável é uma coisa de beleza). A maior desvantagem é que a hospedagem pode ser difícil de encontrar (e cara).
Ruby on Rails
Minha experiência com o RoR é muito semelhante à do Grails: MVC bem executada. Do lado positivo, ele tem uma comunidade maior, então os recursos on-line (documentação, FAQ, exemplos de código etc.) são muito abundantes, existem TONELADAS de plug-ins, Ruby é um pouco mais flexível / expressivo / "descolado", e é muito mais fácil encontrar hospedagem (especialmente para projetos pessoais); do lado negativo, o gerenciamento / configuração de dependências é uma porcaria (usei RubyGems no Windows, Ubuntu, Fedora e OSX e tive problemas não triviais em cada um); há um pouco mais de configuração / sobrecarga do que o Grails (em particular, lidar com o routes.rb e vários arquivos de migração de db) e, aparentemente, o RoR tem alguns problemas sérios de escalabilidade.
PHP (incluindo o framework CakePHP)
Se eu precisar hackear algo rapidamente ou criar um site para uso pessoal , provavelmente usaria o PHP. O PHP é, de longe, a linguagem mais fácil de aprender e implantar: faça o download de qualquer um dos pacotes convenientes do LAMP, clique duas vezes e comece a piratear. A comunidade é maior que a do RoR, por isso a documentação é abundante e existem inúmeros plugins (facilmente "instalados" simplesmente inserindo o arquivo php e atualizando a página). A linguagem é simples de aprender, mas algumas coisas no PHP são absolutamente estranhas e é preciso muita disciplina para evitar códigos feios. A estrutura do CakePHP impõe um bom paradigma MVC para ajudar a manter as coisas em ordem, e na maioria das vezes está em pé de igualdade com o RoR, embora eu pessoalmente tenha achado isso um pouco mais pouco intuitivo.
Java (servlets, JSPs, JSTL, struts, Velocity)
Criei muitos sites usando as tecnologias de servlet Java e posso dizer honestamente que não há boas razões para selecioná-los para qualquer novo site atualmente. Eles têm uma curva de aprendizado íngreme, toneladas de configuração para enfrentar (XML hell), iteração lenta devido à necessidade de reimplementar coisas o tempo todo (a menos que você use o JRebel), código detalhado e nenhum "brinde" em termos de funcionalidade. Eu brinquei com o Play! Framework e Spring Roo um pouco e ambos estão fazendo coisas muito legais com código Java mais ou menos "puro" e vale a pena procurar mais.
fonte
Ao usar o CakePHP, posso ativar um aplicativo da Web mais rápido do que ... um ... cara muito rápido. Enfim, é rápido. Solte os arquivos na pasta raiz da web, configure dois arquivos (cerca de três linhas para alterar em cada). E comece a codificar.
Como favorece a convenção sobre a configuração, será necessária alguma experiência para garantir que seja configurada da melhor maneira possível, mas garanto que, com níveis iguais de experiência, o CakePHP ostenta a implantação mais rápida de qualquer estrutura, provavelmente período .
Dito isso, o projeto original do CakePHP era um clone de rails para PHP (não é mais), por isso tenho certeza de que o Rails também é rápido de implementar.
fonte
Estou trabalhando com a estrutura do ASP.NET MVC há algum tempo e descobri que é uma estrutura bastante boa. Extremamente fácil de usar, especialmente se você estiver familiarizado com o .NET. A estrutura tem crescido rapidamente desde o seu lançamento em 2009. A visualização do MVC 3 foi lançada recentemente ao público. Acho que a MS está fazendo todas as coisas certas com a estrutura do ASP.NET MVC.
fonte
Eu não usei tudo, mas o Rails é muito rápido. Espero que Grails também seja, pois incorpora muito bem a filosofia DRY. Eu não sei o suficiente sobre outras estruturas de linguagem dinâmica para dizer.
Mesmo com boas estratégias de geração de código, meu ASP.NET (webforms) não parece tão eficiente.
fonte
Eu me envolvi com Django e Rails e achei o Rails mais ao meu gosto. Dito isto, eu prefiro o ASP.Net MVC 2 muito melhor que o Rails. Sou muito mais rápido no MVC (ou mesmo apenas nos formulários da Web) do que no Rails simplesmente porque minha mente "funciona melhor" com C #.
Para mim, tudo se resume ao que você sabe e ao que gosta. Ouvi de muitas pessoas que Ruby é divertido, para mim não é. C # é divertido! Haskell é divertido! Se você não gosta da linguagem / estrutura, não será tão rápido quanto uma estrutura "mais lenta" que você gosta.
fonte