Ruby on rails 是否可以/建议编写可重用的Ruby on Rails应用程序?

Ruby on rails 是否可以/建议编写可重用的Ruby on Rails应用程序?,ruby-on-rails,Ruby On Rails,我有一个大型web应用程序的想法,在我看来,它实际上是一些相当独立的应用程序“组件”(?),例如论坛、博客等 在我看来,将一些单独的组件开源给其他人或我自己将来使用会很好 现在很明显,我可以编写一个基本论坛,提供代码,然后将其复制到我的大型应用程序中,并对其进行扩展/集成。然而,这感觉不是很干。在理想情况下,我可以在一个地方维护代码,并将其放入更大的应用程序中 Rails似乎包含了,这听起来像是解决了我的问题,但似乎我想做的是一个 我也应该 a) 只需构建一个大型耦合应用程序。 b) 创建一个

我有一个大型web应用程序的想法,在我看来,它实际上是一些相当独立的应用程序“组件”(?),例如论坛、博客等

在我看来,将一些单独的组件开源给其他人或我自己将来使用会很好

现在很明显,我可以编写一个基本论坛,提供代码,然后将其复制到我的大型应用程序中,并对其进行扩展/集成。然而,这感觉不是很干。在理想情况下,我可以在一个地方维护代码,并将其放入更大的应用程序中

Rails似乎包含了,这听起来像是解决了我的问题,但似乎我想做的是一个

我也应该

a) 只需构建一个大型耦合应用程序。
b) 创建一个rails论坛应用程序(例如),发布它,然后将其合并/复制到我的主应用程序中
c) 使用引擎
d) 其他

干杯


亚当

这个警告只是本叔叔的标准推论。从“拥有强大的力量,也会带来巨大的责任”到“仅仅因为你可以,并不意味着你应该。”

然而,仅仅因为发动机有许多用途是不好的想法,这并不意味着你的情况就是这样。博客和论坛是两个相当独立的组件,它们已经作为插件使用引擎生成。你甚至不需要制作它们

在我看来,如果你打算重用一个功能组件,你可以切实地将其与应用程序的其余部分分离开来,那么无论它是否依赖于引擎,这都是一个很好的理由让它成为一个插件

我的经验是,这些插件是从我编写的现有应用程序代码发展而来的。将它们作为应用程序的一部分进行构思、编写和测试要比单独使用它们容易得多。作为微型应用程序的引擎,并不难构建和测试

简而言之。只有你才能决定哪条路最好,因为你最熟悉应用程序的目标。在开始之前,先看看其他人对引擎和插件做了什么。要生成的组件可能已经存在


为了回答这个问题,我可能会从构建一个应用程序开始,提取出在其他应用程序中可能有用的部分,并在它们成熟时将它们抽象为[引擎]插件。

您可能正在寻找的Git子模块。我对它们不太了解,但你可以简单地在git回购中进行git回购。而且,您可以非常轻松地更新所有内部git回购。谈论它。

它到底在哪里说使用引擎是个坏主意?“没有人不同意这一点,但仅仅因为可以使用引擎编写巨大的应用程序块,就对引擎开发方法进行标记是错误的。仅仅因为他们让这样的事情成为可能,并不意味着你应该,或者任何人都会。我相信社区有足够的判断力来选择适合他们的东西。”你读了很多这方面的书,你可能应该读Dan Chak的《企业Rails》