gpt4 book ai didi

objective-c - 我的代表的代表是...(设计模式)

转载 作者:行者123 更新时间:2023-11-29 11:15:02 24 4
gpt4 key购买 nike

我正在掌握 iOS 的窍门并使用不同的框架。我的项目变得越来越复杂(当然),我认为我正在以一种令人费解的方式做一些事情。

我想知道是否有更简单的设计模式来处理这种情况:

App 有很多属性保存在一个数组中;还持有代表每个属性选项的 NSDictionary 的 NSDictionary。

属性编辑器:呈现显示当前属性的表格以及详细 View 的编辑选项

详细 View :显示包含特定属性所有选项的表格

我现在通过以下方式使它正常工作:

App -> 将自己设置为 Property Editor 的委托(delegate),它访问委托(delegate)的(App 的)当前属性和属性选项数组

Property Editor -> 将自己设置为每个 Detail view 的委托(delegate),并在 Detail View 上设置代表来自委托(delegate)的适当属性选项数组的属性

详细 View -> 适当的属性选项数组

这看起来很复杂。让Detail View 委托(delegate)我的App 会更好吗?有没有更清晰的设计模式?我意识到所有这些类之间存在紧密耦合,但我看不出这是如何避免的。

最佳答案

为什么不创建一个单例类来访问您所有的应用程序属性(我们称之为 PropertiesContainer)。此类将包含必要的字典,并将由 [PropertiesContainer sharedInstance] 访问。

这样一来,您提到的所有类都不需要与每个类耦合来访问属性。现在您将拥有一个可以在任何需要的地方轻松访问的类(class)。 (而且它不需要知道谁在使用它)

关于objective-c - 我的代表的代表是...(设计模式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9860926/

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