【问题标题】:Recommended coding style for setting property values in Objective-C在 Objective-C 中设置属性值的推荐编码风格
【发布时间】:2009-04-13 16:07:09
【问题描述】:

假设我有这个界面:

// .h
@interface DataObject : NSObject {
    NSString* value;
}

@property (retain) NSString* value;

@end

// .m

@implementation DataObject

@synthetize value

@end

据我了解,以下两个sn-ps是相同的:

DataObject *o = [[[DataObject alloc] init] autorelease];
[o setValue: @"Hello"];

DataObject *o = [[[DataObject alloc] init] autorelease];
o.value = @"Hello";

我说的对吗?如果是,我应该更喜欢一种而不是另一种吗?还是只是一种风格偏好?

谢谢。

【问题讨论】:

    标签: objective-c coding-style


    【解决方案1】:

    这是风格问题。

    点语法在整个 Objective C 中的许多地方都有效,尽管它只被认为是 getter 和 setter “可接受的”。

    【讨论】:

      【解决方案2】:

      我认为点表示法比调用 set 方法更可取。我认为代码更具可读性,点表示法更清楚地表明您正在设置一个属性,而不是仅仅在类上调用一个方法。

      【讨论】:

        【解决方案3】:

        点符号只是语法糖,所以两者是相同的。

        【讨论】:

          【解决方案4】:

          2009 年 8 月,博客圈中出现了关于使用点语法的骚动。

          【讨论】:

            猜你喜欢
            • 2011-01-02
            • 2012-04-07
            • 2016-04-02
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-12-16
            相关资源
            最近更新 更多