0

我正在评估 Rails 作为新 Web 项目的框架。我唯一担心的是,据我所知,Rails 在构建时非常倾向于 CRUD 和 SQL 应用程序。

我的应用程序的架构风格将使用 NoSQL 数据库进行域驱动,这与 Rails 的根源几乎相反。我还觉得 Rails 应用程序与单个数据库紧密相关。

我已经看到一些试图使 Rails NoSQL 友好的工作,特别是 DataMapper 2 看起来非常有趣(并且需要很长时间),但我想知道当前的 Rails 架构是否适合 DDD 项目(反活动记录)。

理想情况下,我想使用 Rails 的成熟度、社区和 Ruby。但我也看到许多成熟的项目在采用新的编程风格时遇到了问题,而这些新风格从一开始就没有被考虑过。

此外,我正在考虑使用像 Sinatra 这样的微框架,它应该让我能够灵活地使用自己的架构风格。唯一的缺点是我更喜欢一个框架来处理尽可能多的事情(没有长期的 Web 开发经验)。

4

1 回答 1

3

听起来 Sinatra 是您最好的选择。

您描述的一些概念传统上对于 Rails 应用程序来说并不是开箱即用的——使用 datamapper 配置多个 NoSQL 数据库会让您有些头疼。

使用 Sinatra,您可以两全其美。它是一种特定领域的语言,而不是一个框架——因此您可以完全按照您的需要对其进行自定义。虽然设置需要一些工作,但完全控制您的应用程序使用的框架是非常令人满意的。从头开始构建它。

不要误会我的意思,我喜欢 Rails,但是当我必须开始使用它的内部时,你最好用 Sinatra 自己构建它。

于 2013-11-15T00:30:34.260 回答