我正在创建一个具有以下约束的rails应用程序
我的节目结构应该如何?
第二种方法似乎是最合适的,但是模型中的所有方法都是静态的,我将调用本质上没有任何对象的所有方法。
发布于 2011-11-05 03:32:21
我的直觉告诉我,你想把一些代码放入模型中是正确的。事实是,尽管这些是您的应用程序中的功能/非功能需求,但这可能会发生变化。您可能需要在这个项目的下一次迭代中实现一个数据库,或者更糟糕的是,您存储数据的整个方式可能会被彻底修改。
事情的真相是事物的变化。您越好地模块化和抽象您的代码,您将能够更快地适应未来的变化。您还将为更容易的单元和集成测试做好准备。这是一个重要的因素,因为在问题变成问题之前发现问题会节省时间和声誉。
发布于 2011-11-04 10:02:07
我不熟悉Rails,但从理论上讲,为了严格保留MVC,您应该将gem封装在模型中(第二种方法)。
如果您的Gem已经定义了所需的所有数据结构,那么您可以决定将Gem称为您的“模型”,即使它可能驻留在一个非常规位置(同样,我不熟悉Rails,所以您可以将gem放在任何您想要的位置)。您肯定需要将数据传递给Gem的方法并获取数据,这将隐式地使这些参数和返回值成为您的模型。
有一个静态模型是没有错的。事实上,功能爱好者会喜欢这样的。
发布于 2011-11-04 15:49:50
如果您没有太多的模型,并且确信这是未来的情况,那么创建一个虚拟模型,或者如果它是相反的,如果API支持JSON,那么如果我们不打算对对象进行任何后处理,那么使用JSON library.It转换数据就没有意义了。
https://softwareengineering.stackexchange.com/questions/116113
复制相似问题