Pergunta

Estou avaliando o Rails como uma estrutura para um novo projeto da Web. Minha única preocupação é que, até onde eu sei, os Rails foram construídos com uma forte inclinação em relação aos aplicativos CRUD e SQL.

O estilo de arquitetura do meu aplicativo será acionado com um banco de dados NoSQL, quase o oposto às raízes dos trilhos. Também tenho a impressão de que os aplicativos Rails estão fortemente vinculados a um único banco de dados.

Vi algum trabalho tentando tornar o Rails NOSQL, especialmente o Datamapper 2 parece muito interessante (e demorando muito), mas estou me perguntando se a arquitetura atual do Rails é adequada para projetos DDD (registro antivo).

Idealmente, gostaria de usar trilhos para sua maturidade, comunidade e rubi. Mas também vi muitos projetos maduros que tiveram problemas para adotar novos estilos de programação que não foram considerados desde o início.

Também estou considerando um micro-quadro como Sinatra, que deve me dar a flexibilidade de usar meu próprio estilo de arquitetura. A única desvantagem disso eu preferiria uma estrutura cuidando do maior número possível de coisas (não há longa experiência com o desenvolvimento da web).

Foi útil?

Solução

Parece que Sinatra é a sua melhor aposta.

Alguns dos conceitos que você descreveu não são, tradicionalmente, sai da caixa Então, para falar por um aplicativo Rails - e configurar vários bancos de dados NOSQL com Datamapper fornecerá algumas dores de cabeça.

Com Sinatra, você obtém o melhor dos dois mundos. É um linguagem específica do domínio, não é uma estrutura - para que você possa personalizá -la exatamente da maneira que precisa. Embora seja necessário um trabalho para configurar, ter controle completo sobre a estrutura que seu aplicativo usa é muito satisfatório. Construa -o do zero.

Não me interpretem mal, eu amo Rails, mas no momento em que tenho que começar a brincar com seus internos, é melhor você mesmo construí -lo com Sinatra.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top