【问题标题】:Where does a Datasource object belong to? Controller or Model?数据源对象属于哪里?控制器还是模型?
【发布时间】:2009-05-07 22:43:53
【问题描述】:

我正在为 UIScrollView 实现一个数据源对象。那是控制器的一部分,还是模型的一部分?我认为控制器,但不确定。它提供数据。但是数据可能在sqlite3,文件中,来自网络。所以实际上我会说它不是来自数据部分,因为它应该灵活地从数据的来源。你怎么看?

【问题讨论】:

    标签: objective-c cocoa cocoa-touch datasource


    【解决方案1】:

    任何视觉控件的数据源都应该是您的控制器。您的控制器应该从模型中获取/处理数据,然后将其交给视图。

    【讨论】:

      【解决方案2】:

      我会说实际上两者都不是。您的 UIScrollView 数据源只是格式化您的数据以供显示。

      除非您有执行“业务逻辑”的特定操作,否则您的 UIScrollView 数据源将参与视图。

      控制器将包含以任何方式修改或处理数据的逻辑,您的滚动视图仅允许显示数据。

      【讨论】:

      • 其实再想一想,大概是在控制器和视图之间的线上。
      【解决方案3】:

      Cocoa 的 MVC 范式鼓励“模型控制器”和“视图控制器”对象。数据源对象属于视图控制器类别;它根据 UI 元素的需要从数据存储中请求模型对象,重新格式化数据以适应,然后将其传递给 UI。通常同一个对象也会处理 UI 事件和委托方法。

      【讨论】:

        猜你喜欢
        • 2012-02-09
        • 2016-01-25
        • 2011-05-28
        • 1970-01-01
        • 1970-01-01
        • 2016-08-24
        • 2018-10-27
        • 1970-01-01
        • 2011-10-22
        相关资源
        最近更新 更多