2015-03-20 4 views
0

Мой коллега возразил в обзоре кода, что объявление объекта CGFloat obj-c с назначением квалификатора является излишним, поскольку оно неявно назначается. Он говорит, что это все, что мне нужно.Должен ли я пропускать квалификатор «присваивать» при объявлении примитивных свойств?

@property (nonatomic) CGFloat cornerRadius; 

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

Является ли этот квалификатор необязательным и использует его для личных предпочтений?

+1

Закрытие в основном на основе мнения. Однако я был бы сторонником людей, которые добавят 'assign'. – trojanfoe

+0

Какое мнение? Ответ на мой вопрос можно логически обосновать. Это не живопись, которая имеет субъективное мнение. Если есть два правильных ответа, это также прекрасно, я не сказал, что это невозможно. Где именно существует мнение и субъективный вкус? –

+0

Поскольку это свойство необязательно для определенных типов данных. Это похоже на вопрос: «Мне нужно добавить' int' в 'unsigned int' или нет?». Оба являются правильными и соответствуют личным предпочтениям или стандартам кодирования. Отсюда мнение. – trojanfoe

ответ

2

Они оба справа. Это выбор стиля на самом деле. Значения по умолчанию не требуются. Но лично я положил assign, потому что он понятен и самодокументирован. Не нужно помнить, что такое по умолчанию.

В конце концов, это личный выбор или выбор любых стандартов кодирования, которые необходимо соблюдать.

Обновление на основе обновленного вопроса:

Да, использование assign в собственности не является обязательным, и да, это вопрос личных предпочтений выбрать, следует ли использовать его или нет.

+0

Итак, вопрос не в тему? – trojanfoe

+0

Я бы тоже добавил с добавлением «Не нужно помнить, что такое по умолчанию». –

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