StyleCop vs ReSharper и общие вопросы стиля кодирования - PullRequest
21 голосов
/ 06 октября 2009

Только что нашел StyleCop, похоже, что-то стоит использовать для моих проектов. Затем я узнал, что вы можете использовать его с ReSharper (инструментом, который я никогда не использовал). Поэтому я скачал ReSharper, а также StyleCop для ReSharper. Я просто немного запутался, хотя:

  1. При установленном только StyleCop (без ReSharper) меня кричат ​​на прямую ссылку на закрытые переменные в коде. Он хочет, чтобы я сделал это. Переменная. Хорошо, хорошо.

  2. Если я использую только ReSharper, он говорит мне удалить все вызовы this, которые я только что добавил. Какой из них лучше?

  3. Если я использую ReSharper + StyleCop для ReSharper, теперь он говорит мне добавить «this» ко всем частным ссылкам на членов (так же, как StyleCop сделал все сам). Однако теперь он также хочет, чтобы я добавил «this» ко всем элементам управления, на которые я ссылаюсь со страницы .aspx (т. Е. Label.Text = this.variable -> this.Label.Text = this.variable).

Я так растерялся. Какой лучший стандарт для подражания? Или я просто прекрасно делаю это так, как я сейчас (Label.Text = variable)?

Ответы [ 3 ]

13 голосов
/ 06 октября 2009

Ключевым моментом является последовательность. Ваше конкретное форматирование в отношении этого пункта сводится к личным предпочтениям.

Обеспечивает ли дополнительная многословность дополнительную ясность в отношении того, на какую переменную вы ссылаетесь, или это затеняет смысл, наполняя страницу дополнительным текстом?

Это призыв к суду. Они применяют другие правила, которые имеют смысл; тем не менее, большая часть того, что они делают, это обеспечение согласованности. Как сказал @Martin, не стесняйтесь отключать правила, которые не имеют смысла для вашего рабочего процесса.

11 голосов
/ 11 января 2010

Извините, работая в команде, все сводится к пониманию политики; В конце концов, мы работаем, чтобы получать деньги!

Если человек, который решил ваш следующий повышение заработной платы использует StyleCop, то вы всегда следует включать «это». Аналогично, если босс использует ReSharper ты должен делать то, что говорит ReSharper.

Есть много более важных войн, чтобы выиграть это, например. 10 000 классов строк, метод более крупного размера

Если вам посчастливится решить, какие инструменты (и стандарты кодирования) использовать самостоятельно, я бы просто выбрал ReSharper и прочитал книгу « clean code ».

2 голосов
/ 06 октября 2009

Я думаю, что вам решать, какие соглашения вы хотите соблюдать (это вопрос личных предпочтений). По крайней мере, в ReSharper вы можете редактировать правила, чтобы больше не показывать определенные предупреждения / подсказки.

...