gpt4 book ai didi

design-patterns - Core Data 如何适应 MVC 模型对象?

转载 作者:行者123 更新时间:2023-12-04 06:59:30 24 4
gpt4 key购买 nike

这更多是一个理论问题,但核心数据对象如何/应该如何适应应用程序的“模型”?在最简单的层面上,“模型”可能只是直接的核心数据对象,但就其本身而言,它们只是没有任何“可观察”功能的数据容器。可能有一个单独的模型类来封装核心数据对象,这似乎是一个更好的解决方案,但我不确定引用应该是强的还是弱的。

此外,模型是否应该关注和/或处理自己的持久性?

最佳答案

在 Apple 使用 MVC 习惯用法的上下文中,核心数据本身绝对有资格用于整个数据层。

托管对象子类可以包含很多功能——你称之为模型“逻辑”。这是一种非常常见的设计模式。例如,如果您的数据模型用美元值描述交易数据,您可以拥有提供这些值总和的提取请求模板。您可以通过使用提供计算/格式化等数据的自定义方法扩展托管对象来做更复杂的事情。

然后,在您的 Controller 中,您可以读取和更改数据,并从 UI 获取输入并更新数据的显示。你的 Controller 不应该做更多的事情。

当然,在应用逻辑极其复杂的情况下,你可以随时创建像DerivativesTradingProfitabilityEngine这样的单例。它可以处理来自 Core Data 的数据并将其提供给 UI Controller 。如果您需要在后台线程中进行大量繁重的工作,这可能是合适的。

然而,在大多数情况下,标准的 Core Data 设置就足够了。

关于design-patterns - Core Data 如何适应 MVC 模型对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17298932/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com