首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用外部API用虚拟模型组织MVC应用程序

使用外部API用虚拟模型组织MVC应用程序
EN

Software Engineering用户
提问于 2011-10-25 13:19:42
回答 3查看 1.6K关注 0票数 1

我正在创建一个具有以下约束的rails应用程序

  • 它没有数据库
  • 它使用web API存储和检索数据。
  • 与web的连接是通过自定义的gem进行的。
  • Gem具有基于给定参数进行web调用的基本功能。
  • 我有2-3种不同的对象,我可以想到(或者更精确地说是虚拟模型)。

我的节目结构应该如何?

  • 是否应该将所有方法调用合并到gem中?
  • 我是否应该创建模型并将与api相关的调用放入其中(然后通过gem的基本方法)
  • 我应该忽略这个模型,把所有的东西都放在控制器里。?

第二种方法似乎是最合适的,但是模型中的所有方法都是静态的,我将调用本质上没有任何对象的所有方法。

EN

回答 3

Software Engineering用户

回答已采纳

发布于 2011-11-05 03:32:21

我的直觉告诉我,你想把一些代码放入模型中是正确的。事实是,尽管这些是您的应用程序中的功能/非功能需求,但这可能会发生变化。您可能需要在这个项目的下一次迭代中实现一个数据库,或者更糟糕的是,您存储数据的整个方式可能会被彻底修改。

事情的真相是事物的变化。您越好地模块化和抽象您的代码,您将能够更快地适应未来的变化。您还将为更容易的单元和集成测试做好准备。这是一个重要的因素,因为在问题变成问题之前发现问题会节省时间和声誉。

票数 1
EN

Software Engineering用户

发布于 2011-11-04 10:02:07

我不熟悉Rails,但从理论上讲,为了严格保留MVC,您应该将gem封装在模型中(第二种方法)。

如果您的Gem已经定义了所需的所有数据结构,那么您可以决定将Gem称为您的“模型”,即使它可能驻留在一个非常规位置(同样,我不熟悉Rails,所以您可以将gem放在任何您想要的位置)。您肯定需要将数据传递给Gem的方法并获取数据,这将隐式地使这些参数和返回值成为您的模型。

有一个静态模型是没有错的。事实上,功能爱好者会喜欢这样的。

票数 0
EN

Software Engineering用户

发布于 2011-11-04 15:49:50

如果您没有太多的模型,并且确信这是未来的情况,那么创建一个虚拟模型,或者如果它是相反的,如果API支持JSON,那么如果我们不打算对对象进行任何后处理,那么使用JSON library.It转换数据就没有意义了。

票数 0
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/116113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档