gpt4 book ai didi

cocoa - 复杂iPad应用程序中的MVC设计模式: is one fat controller acceptable?

转载 作者:行者123 更新时间:2023-11-29 05:06:51 25 4
gpt4 key购买 nike

我正在构建一个复杂的 iPad 应用程序;将其视为剪贴簿。出于此问题的目的,让我们考虑一个上面有两个图像的页面。
我的主视图显示渲染为单个 UIImage 的文档数据;这是因为我需要对它们进行一些全局操作。这是我的 DisplayView
编辑时,我需要实例化一个 EditorView 并将我的两个图像作为 subview ;这样我就可以与单个图像进行交互(旋转它,缩放它,移动它)。触发编辑时,我隐藏 DisplayView 并显示 EditorView

在 iPhone 应用程序中,我会将每个主视图(即填充屏幕的 View )关联到 View Controller 。
问题是这里只有一个 View Controller ;我考虑过通过模态视图 Controller 传递 EditorView ,但这不是一个选项(有一个复杂的布局,上面有一个 mask 覆盖所有内容和调色板;在 EditorView 中重建它code> 会创建重复的代码)。

目前EditorView合并了一些逻辑(从模型加载数据,调用一些 subview 进行精细编辑,将数据保存回模型); EditorView subview 还包含一些逻辑(我操作图像并将它们传递回主 EditorView)。我觉得这个逻辑更多地属于 Controller 。另一方面,我不确定让我唯一的 View Controller 变得这么胖是个好主意。

这种类结构最好的、 cocoa 式的实现是什么?
请随时要求澄清。
干杯。

最佳答案

巨大的脂肪 Controller 没问题。

如果有必要,只需从中分离出一些“纯逻辑部分”并将它们放入其他“帮助类”中即可。并尽可能广泛地使用类别等技巧。

如果感觉合适的话,肯定会选择 HFC(巨大的 Controller )。

然后,骑上你的工程自行车,瘦身吧!

你绝对不应该仅仅因为一件事情太大而回避正确的结构、良好的结构、你想要的结构。

通过外包概念、疯狂分类等等来缩小这个大问题——书中的每一个技巧。

我的信念!

关于cocoa - 复杂iPad应用程序中的MVC设计模式: is one fat controller acceptable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4690646/

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