这个问题是概念性的,围绕 OOP 中的 MVC 模式。情节如下:我们在一个富客户端应用程序中,它与 REST Web 服务一起工作。我们向服务器上的资源发出 GET 请求,服务器返回 XML 格式的响应。响应看起来像一个 RSS 提要。客户端应用程序需要将此 XML 解析并显示为可读的 mod。
我制作了一个模型对象,它基本上反映了一个服务器数据库表,我还有一个解析器和一个视图控制器(显然还有一个视图)。
这是它今天的工作原理。视图控制器告诉解析器开始解析,解析器(SAX 类型)读取 XML,并实例化模型对象并在其属性中加载详细信息。每次解析器完成一个项目时,它都会通过委托方法通知视图控制器。它将解析的项目(类型是模型对象)发送到视图控制器。视图控制器将此项目添加到集合中。
当解析器完成对 XML 的解析时,它会通知视图控制器,然后视图控制器读取集合中的每个项目并构建视图。
这是我的问题。
- 这是一个很好的实现吗?
- 我认为集合所有者应该直接是模型,所以视图控制器要求模型开始解析,解析器通知模型而不是视图控制器,最后模型将集合发送回视图控制器。这是否更好 ?
- 我应该合并模型和解析器吗?