2013-05-27 4 views
2

Я не носитель языка, поэтому я немного смущен в следующей ситуации. Известны Apple naming conventions on accessor methods. Но они охватывают только простые случаи.Свойства BOOL, имена в Objective C

Предположим, у меня есть класс Fetcher, который, очевидно, может -fetch. Я хотел бы иметь возможность выполнить отложенную выборку и проверить, правильно ли она была запланирована. К сожалению, оба слова (выборка и расписание) могут быть существительными или глаголами. Какие имена я должен выбрать?

  1. -scheduleFetch против -scheduleFetching для метода, который планируется?
    • @property (readonly, getter=isFetchScheduled) BOOL fetchScheduled против
    • @property (readonly) BOOL fetchIsScheduled против
    • getter=hasScheduledFetch против
    • что-нибудь еще?

    (все это перерыв «Не крутите глагол в прилагательное, используя причастие» условность из документации)

Это становится еще хуже, потому что у меня Request недвижимости в этом Fetcher, и этот запрос имеет @property (getter=isTyped) BOOL typed. Как я могу назвать свойство оболочки для последнего? Такие же варианты, как указано выше: hasTypedRequest, isRequestTyped, requestIsTyped или что-нибудь еще?

ответ

2

Важнейшим правилом из моего понимания является читаемость и согласованность. Я бы использовал «scheduleFetch», «isFetchScheduled» и «isRequestTyped». Однако, если у вас есть другие соглашения в вашей программе, придерживайтесь их.

Чтобы помочь понять, потому что выборка и расписание могут быть как глаголами, так и существительными, все равно оставить их двусмысленными.

Насколько я не склоняюсь к идее причастия, я лично не беспокоюсь об этом слишком сильно, если это заставляет меня напрягаться, чтобы придумать странные английские фразы.

Смежные вопросы