objective-c - 在 Obj-C 中过度使用点运算符的替代方法是什么?

标签 objective-c design-patterns oop coding-style

看看你对这行代码的看法:

if ([pickerViewController.picker.bvc.currentResolve.name isEqualToString:message])
  ...

您会认为这是对点运算符的过度使用吗?

如果没有,我可以保持原样。

但如果是这样,首选的替代方案是什么?

最佳答案

这更像是一个 Law of Demeter违反而不是点运算符的问题。做到这一点的“更干净”的方法是为对象提供逻辑来自己解决这个问题,这样你就可以做类似的事情

if ([pickerViewController hasPickedName:message])

关于objective-c - 在 Obj-C 中过度使用点运算符的替代方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/866222/

相关文章:

ios - 在我的应用程序中模拟设备按钮?

python - 用于在 Python 中过滤对象的用户界面

design-patterns - 使用MVVM时,是否应该创建新的 View 模型以不同方式显示同一模型?

perl - 调用SUPER::new()

c++ - C++中的双重继承运行时错误

iphone - 快速将单个引脚添加到 MKMapView?

c++ - 在 C++ 代码中返回 Obj-C block

ios - 将NSString值转换为日期返回nil

ios - 在 Swift 中为 UIViewController 自定义 UIView

c++ - vector 问题,C++ 不确定我做错了什么