iOS MVC 设计模式 - REST 资源模型和 View Controller 之间的层

标签 ios model-view-controller cocoa-design-patterns

您如何看待在 MVC 模式中的模型和 View Controller 之间添加一个逻辑层?

我们有 REST 资源模型,其中包含用于在服务器上更新/获取数据的只读属性和方法。这些模型放置在一个由多个 iOS/OS X 应用程序使用的框架中,因此我们不想向它们添加任何特定于应用程序的代码。

View Controller 通过放置常用逻辑的层访问这些 REST 资源模型,例如过滤和缓存大型集合。该层由类组成,其中每个类对应一个 REST 资源,该类的每个实例都有一个 REST 资源模型的实例。 REST 资源是公共(public)的,因此 View Controller 可以直接读取资源及其值。

这一层的类应该叫什么? 它们是 Controller 、助手、实用程序还是其他东西?或者这是一个无效的 Cocoa 设计模式?

例如,如果资源名为“Activity”,它的类是否可以命名为“ActivityController”?

最佳答案

据我了解,您使用的似乎通常是资源模型上的包装器。更具体地说,考虑到您在其中放置了过滤逻辑,可能是 Proxy是正确的名字。我不认为这是一个无效的 Cocoa 设计模式。无论如何

The REST resource is public so the resource and its values can be read directly by view controllers.

听起来很奇怪。资源应该是私有(private)的,代理应该提供访问模型值的功能。

关于iOS MVC 设计模式 - REST 资源模型和 View Controller 之间的层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27819561/

相关文章:

iOS Today 扩展无法构建

iphone - MPMoviePlayerController 从流视频中获取缩略图?

java - Spring Controller 中搜索的方法不起作用

iphone - 将 10 MB JSON 响应转换为 NSDictionary 的最有效方法是什么?

ios - 无法获取 UIBarButtonSystemItemTrash 的图标

javascript - 使用 tr.remove() 删除 HTML 表格的行,提交按钮只发回它上面的行而不是下面的行

oop - MVC模式是否否定了其他设计模式?

Cocoa:如何动态调整 NSTextField 的大小?

ios - View Controller 透明背景