gpt4 book ai didi

ios - subview 有委托(delegate),糟糕的设计?

转载 作者:行者123 更新时间:2023-11-28 22:20:40 25 4
gpt4 key购买 nike

这是基本扑克游戏的设置。

PokerViewController 有一个名为 PokerTableView 的 subview 。后者有一堆称为 CardView 的 subview 。

我正在努力成为一名优秀的程序员并遵循基本的 MVC 模式。 PokerTableView 有一个委托(delegate)和一个由 PokerViewController 实现的数据源。

我向 PokerTableView 添加了一堆 CardView,我想移动它们,所以我在 CardView 中添加了手势识别器类,然后添加一个委托(delegate),这样每张牌都可以告诉其父级 (PokerTableView) 它正在被移动、点击等。

这是糟糕的设计吗?

如果 CardView 有带委托(delegate)的 subview 怎么办?在祖 parent 、 parent 、子女关系中设置协议(protocol)是不是糟糕的设计?

最佳答案

从表面上看,这里没有任何内容违反 MVC 的一般原则。事实上,委托(delegate)模式在 UIKit 框架中是众所周知的。

我认为这里重要的是要非常清楚——无论是在你的头脑中还是在文档中——什么对象负责什么行为,并确保这些责任相对于对象的概念是有意义的。例如,CardView 对象应该负责卡片的视觉表示所做的事情。 PokerTableView 对象应该负责扑克牌 table 的视觉表示所做的事情。也许在幕后也有模型类。

关于ios - subview 有委托(delegate),糟糕的设计?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20498793/

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