2

我不是母语人士,所以在以下情况下我有点困惑。访问器方法有众所周知的Apple 命名约定。但它们只涵盖简单的情况。

假设我有一Fetcher堂课,显然可以-fetch。我希望能够执行延迟提取,并检查它是否被正确安排。不幸的是,这两个词(fetch 和 schedule)都可以是名词或动词。我应该选择什么名字?

  1. -scheduleFetchvs.-scheduleFetching对于调度的方法?
    • @property (readonly, getter=isFetchScheduled) BOOL fetchScheduled对比
    • @property (readonly) BOOL fetchIsScheduled对比
    • getter=hasScheduledFetch对比
    • 还要别的吗?

    (所有这些都打破了文档中的“不要使用分词将动词扭曲成形容词”的约定)

更糟糕的是,因为我Request在 this 中有一个属性Fetcher,而这个请求有@property (getter=isTyped) BOOL typed. 我应该如何为后者命名一个包装器属性?与上述相同的变体:hasTypedRequest, isRequestTyped, requestIsTyped, 还是其他?

4

1 回答 1

2

根据我的理解,最重要的规则是可读性和一致性。我会使用“scheduleFetch”、“isFetchScheduled”和“isRequestTyped”。但是,如果您的程序中有其他约定,请遵守这些约定。

为了帮助理解,因为 fetch 和 schedule 既可以是动词也可以是名词,所以可以让它们都模棱两可。

至于不要扭曲分词的想法,我个人不会担心太多,如果它让我费力想出奇怪的英语短语。

于 2013-05-27T21:10:21.510 回答