Должен ли я использовать Resharper для упорядочивания кода других людей?

Я использую Resharper на работе. Некоторые из моих коллег не делают.

Когда я открываю какой-то код, который был написан кем-то, кто этого не делает, сразу же видно количество оранжевого на моем экране.

Чего я не уверен в том, насколько я должен чувствовать себя свободным, чтобы привести в порядок беспорядки, которые бессознательно ушли. С большинством из того, что я смотрю, он небрежный, но безвредный, и на самом деле не выпрыгнул бы на меня, если бы я никогда не использовал Resharper.

Я предполагаю, что мои варианты широко представлены как

1) История изменений исходного кода необходима для обслуживания. Измените как можно меньше, или у следующего парня не будет надежды выяснить, что изменилось. Кто заботится о недостижимом коде, ненужном использовании .ToString() и т.д. В любом случае.

2) Измените бессмысленный материал, например, включите, исправьте комментарии к документации по модели и тому подобное. Парень, который написал его, любит, чтобы его код выглядел так, поэтому оставьте его в состоянии, в котором он не будет жаловаться, но избавиться от некоторых ненужных апельсин.

3) Оранжевый только красный, но легче. F12, затем Alt + Enter до зеленого цвета.

4) Забудьте о оранжевом, посмотрите на эту функцию 700 монстров. Что это за 1997 год? Время заняться... и если у вас есть время, представьте своего коллегу нашему хорошему другу и наставнику г-ну Фаулеру.

Я склонен переключаться между параметрами в зависимости от того, сколько времени у меня есть, насколько я теперь отвечаю за код и насколько сложным выглядит код (что может заставить меня пойти на 1 или 4 обычно).

Кажется, что один из 4 вариантов должен быть тем, к которому я стремлюсь, но я не знаю, какой из них

Ответ 1

"Leave the campsite cleaner than you found it."

Это принцип мальчика. Если это "их" код, и они его поддерживают, то введение незначительных изменений очистки не должно их обижать, но слишком далеко может показаться грубым или вы можете взять на себя ответственность за код.

Ответ 2

Ваша команда должна договориться о стандарте. Если кто-то другой использует другой инструмент, вы можете оказаться в непреднамеренной войне редактирования.

Но если вы все можете согласиться, тогда да. Очистите код, когда идете.

Ответ 3

Я делаю "переформатированную" проверку перед изменением какой-либо реальной логики, таким образом вы можете видеть, что изменилось.

Ответ 4

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

Если "бессмысленный" материал (документация, комментарии и т.д.) должен быть отформатирован определенным образом, и он не соответствует вашим стандартам развития, я бы сделал все это сразу за несколько проверок, насколько это возможно.

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

Ответ 5

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

Ответ 6

В любое время, когда вы меняете что-либо, независимо от намерения, вы рискуете каким-то непреднамеренным взломом. С личной стороны я бы не изменил код другого человека, не разговаривая с ними в первую очередь.

Ответ 7

Я рекомендую только изменить ситуацию, когда вам нужно. Разумеется, существует определенное определение того, что означает "необходимость". Например, если вы пишете метод, который вызывает другой метод, и этот метод, который вы вызываете, имеет некоторое дублирование кода? Я бы реорганизовал это, и пока я нахожусь в нем, удаляйте избыточные инструкции using и т.д. Я бы попытался избежать просто массивного рефакторирования всей базы кода "только потому, что".

Ответ 8

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

В общем, я очищу стиль кода, чтобы привести его в соответствие с заявленными целями стиля организации, когда я касаюсь кода по другой причине. Попытайтесь вспомнить, что стиль стиль, однако, и, как таковой, нет "одного истинного пути". Не делайте врагов, потому что вам не нравится тот факт, что коллега использует меньше (или больше) пробелов, чем вы.

Ответ 9

Мое предложение состояло в том, что если вы сделаете переформатирование, это будет сделано отдельно от любых модификаций кода. Причина этого заключается в том, что вы можете пометить ее как "только форматировать" в репозитории, а законное изменение кода не будет похоронено посредине множества изменений интервалов, что делает невозможным для вас или следующего парня понять, что сломало.

Ответ 10

Как большинство людей уже сказали, да, лучше реорганизовать и оставить его более аккуратным.

Рефакторинг помогает каждому стать лучше, и каждый должен иметь доступ к инструментам рефакторинга (Coderush для меня).

Однако, если ваши коллеги не разделяют рефакторинг любви, то это хорошая возможность для вас, чтобы просветить их:)